首页 > 解决方案 > SQLITE:以与 IN 数组相同的顺序拉取项目

问题描述

我有以下查询:

SELECT * from tWords where WordAton IN ("bbb", "aaa2", "ccc", "aaa1")

查询首先返回“aaa1”的结果,然后是“aaa2”的结果,然后是“bbb”的结果,然后是“ccc”的结果。有没有办法按输入数组的顺序返回结果,这意味着首先是“bbb”的结果,然后是“aaa2”的结果......等等。

先感谢您。

标签: sqlite

解决方案


您可以像这样应用条件排序:

SELECT * 
from tWords 
where WordAton IN ('bbb', 'aaa2', 'ccc', 'aaa1')
order by case WordAton
  when 'bbb' then 1
  when 'aaa2' then 2
  when 'ccc' then 3
  when 'aaa1' then 4
end 

推荐阅读