android - Room IN 查询是否使用 DISTINCT 和 ORDER BY 主键发回数据
问题描述
我使用带有这样列表的 IN 查询来查询我的房间数据库
@Query("SELECT * FROM card WHERE cardId IN (:cardIds)")
LiveData<List<Card>> getCardsByIds(List<Integer> cardIds);
但它会删除重复项并按主键 ID 的顺序返回它们,这不是我想要的。我希望它像我给它的列表一样返回它给数据库的顺序,所以例如给定一个 <1,3,2,1,4,5,1,2> 的列表我想要同样的返回,但是现在我要回来了使用我似乎无法很好地处理我的实时数据的原始查询,有什么想法吗?似乎它应该是超级直截了当的,因为 sqlite 开箱即用,是房间在返回数据时应用 DISTINCT 和 ORDER BY 主键吗?如果有人知道改变这种情况的方法吗?
编辑 这显然比原始问题提出了更多问题,它可能是一个 sqlite 问题而不是 android 房间问题,这意味着标签在这里更相关
解决方案
推荐阅读
- javascript - iframe 中的 PDF - 适用于 Firefox,但不适用于 OSX 上的 Chrome
- php - 用于更改 SEO 友好 URL 的 WordPress 查询字符串
- angular - 具有 3 种以上颜色的 Angular 主题
- silverstripe - Silverstripe 安装 - 友好的 URL 不起作用
- r - 使用 Dplyr 将两个 Dataframe 相乘并使用结果创建另一个
- xpath - XSLT 中的条件 For-Each
- python - 如何在字符串中存储多行并回显该字符串以在 CSHELL 脚本中打印输出?
- amazon-s3 - socket.io 400 错误请求云端
- c# - 如何使提交按钮单击事件处理程序中的表单无效或停止处理?
- yammer - 使用 REST API 从 Yammer 获取所有用户