sql - PrestoDB - 按 WHERE IN 子句中指定的顺序对结果进行排序
问题描述
我在其他帖子中看到我们可以使用MySQL 中的FIELD()函数来做到这一点。我想知道 presto 中是否有相当于 FIELD() 的东西。非常感谢。
解决方案
不要使用in
. 我会join
推荐values
:
select t.*
from t join
(values (1, 'val1'), (2, 'val2'), (3, 'val3')) v(ord, val)
on t.col = v.val
order by v.ord;
推荐阅读
- java - 使用泛型类作为类型参数的上限
- android - 如何在房间数据库中实现sqlite查询?
- python - 如果只有字符串,如何获取python命令行参数
- terminal - Vagrant 命令在没有 Sudo 的情况下不起作用
- javascript - 无法将状态设置为地图函数内的对象数组
- spring - Spring 4.0 EL cron 表达式无法从 @Bean 方法中得到解析
- javascript - 无法理解这段 javascript 代码如何控制流程?
- java - 如何遍历复杂的 JSON 并放入 Map?
- css - 在关注子按钮时阻止父 CSS
- phpmailer - PHPMAILER,提交表单后如何重定向到感谢页面?