【问题标题】:ORMLite (Android) Please, help me drafting a requestORMLite (Android) 请帮我起草一个请求
【发布时间】:2014-03-10 07:29:29
【问题描述】:

在起草发送至ORMlite (Android) 的请求时确实需要您的帮助。

有sql查询(NamedQuery):

  1. select m.contact.stringId, count(m.contact.stringId) from MessageEntityImpl m where m.status = MessageStatus.NEW group by m.contact.stringId"

  2. SELECT m.chat_id, c.stringid, c.fullname, m.message, Max(posted) as postDate from messageentity m inner join (select chat_id, MAX(posted) max_posted from messageentity group by chat_id) max_posted_date ON m.chat_id = max_posted_date.chat_id and posted = max_posted_date.max_posted inner join contactentity c on c.ID = m.contact_id group by m.chat_id, c.stringid, c.fullname, m.message order by postDate desc

【问题讨论】:

    标签: android sqlite ormlite


    【解决方案1】:

    您最好发出原始查询以获取结果(如GenericRawResults<T>),然后遍历容器以获取所需的结果。这是一个例子 -

    String sql = "select m.contact.stringId from MessageEntityImpl m where m.status = MessageStatus.NEW group by m.contact.stringId";
    
    ArrayList<String> id = new ArrayList<>();
    
    try
    {
        GenericRawResults<String[]> grr = getDao().queryRaw(sql);
        List<String[]> results = grr.getResults();
        for (String[] outArray : results)
            id.add (outArray[0]);
    }
    catch (SQLException sqle)
    {
        sqle.printStackTrace();
    }
    

    getDao() 可以是BaseDaoImpl&lt;T,ID&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-06
      • 2011-09-08
      • 2013-10-20
      • 2020-08-25
      • 1970-01-01
      • 2022-11-10
      • 1970-01-01
      相关资源
      最近更新 更多