sql-server - 根据 WHERE 的 IN 子句中的条目顺序对结果进行排序
问题描述
我有一个查询
select *
from qtable
where qid in (15,555,2,3,4,5,36,27,18,9)
这里qid是主键。
我得到由 qid 排序的以下结果,因为它是主键,但我的要求是获得 in (15, 555, 2, 3, 4, 5, 36, 27, 18, 9) 语句中提到的结果.
有没有办法对记录进行排序?
解决方案
select qtable.*
from qtable join (values (15),(55),(2),(3),(4))a(id)
on a.Id = qtable.qID
推荐阅读
- php - 将图像 blob:转换为 php gd
- range - 无法使用类型为 '(Range
)' - systemd - 无法使用 systemd 启动 prometheus
- python - Python:如何将打印语句和输入放在同一行?
- css - 如何在不指定父元素高度的情况下显示子元素('.cylon')
- spring - 远程分区的 2 个步骤 - 春季批处理
- php - $_POST 返回空我该如何解决这个错误?
- python - Wagtail 如何渲染图像:无法识别的操作:原始
- macos - 为什么来自 /dev/null 的 ioctl FIONREAD 在 Mac OS X 上返回 0 而在 Linux 上返回随机数?
- selenium - Selenium 和 Docker:我无法加载自定义 chrome 用户配置文件