场景
- 现在要在数据库中查询
id
在list<String>
集合中记录,结果并按list<String>
集合中顺序进行排序。
解决方案: field()函数
field()
函数的返回值是value
在值列表中的索引位置。此函数执行不区分大小写的搜索。- 如果在值列表中找不到
value
,此函数将返回 0。如果value
为 NULL,此函数将返回 0。
语法
field(value, val1, val2, val3, ...)
参数值
- value 必需。要在列表中搜索的值
- val1, val2, val3, … 必需。要搜索的值列表
案例
select field("c", "c", "w"); // 返回 1
select field("c", "w", "c"); // 返回 2
select field("c", "w", "y"); // 返回 0
select field(null, "w", "y"); // 返回 0
SQL语句
select * from file_info where file_id in ('awfafasfa','bwfasfsfa') order by field(field_id, 'awfafasfa','bwfasfsfa');