我想通过Android SDK环境中的Room Library从SqLite中选择多个列。 下面是选择它的查询。 @Query(“ SELECT ID,消息,时间戳,来自Chat_Message WHERE groupID =:groupID 按时间戳排序DESC LIMIT 1“) 公共列表get_last_msg_ID_timestamp(字符串 groupID); 我在主类下定义的Last_Msg_Detail类如下:- 公共类Last_Msg_Detail { 公共整数ID; 公共字符串消息; 公共长时间戳; }
execThings()
预先感谢您的帮助。
答案 0 :(得分:1)
您的方法返回自定义对象,并且该对象具有很多字段。
因此,当您尝试返回特定的列时,您尝试返回一个新对象。因此会发生错误。
要解决此问题,请为所选列创建一个新对象。它必须具有这些字段。
ID,message,timestamp
并在您的方法中使用对象
@Query("SELECT ID,message,timestamp FROM Chat_Message WHERE groupID =:groupID ORDER BY timestamp DESC LIMIT 1")
public List<NEW_OBJECT> get_last_msg_ID_timestamp (String groupID);