假设我使用 where 子句查询数据库
WHERE _id IN (5,6,424,2)
返回的游标是否可以按照列表中列出的 _id 的顺序进行排序? _id 属性在 Cursor 中从第一个到最后一个是 5、6、424、2?
这恰好是通过 ContentProvider 在 Android 上进行的,但这可能无关紧要。
最佳答案
使用子查询选择 ID 列表并加入它:
select t1.*
from t1
inner join
(
select 1 as id, 1 as num
union all select 5, 2
union all select 3, 3
) ids on t1.id = ids.id
order by ids.num
更新:代码固定
关于SQL WHERE IN (...) 按列表顺序排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4858828/