【发布时间】:2014-11-30 19:20:54
【问题描述】:
我有一个查询,其中我使用了“In”子句。 现在我希望结果集的顺序与我的 In 子句相同。 例如 -
select Id,Name from mytable where id in (3,6,7,1)
结果集:
|Id | Name |
------------
| 3 | ABS |
| 6 | NVK |
| 7 | USD |
| 1 | KSK |
我不想使用任何临时表。 是否有可能在一个查询中实现目标?
【问题讨论】:
-
将 3,6,7,1 放入一个表中,INNER JOIN 到它,ORDER BY 它
-
这是面试题吗?你为什么要这样做?为什么只使用 1 个查询?如果是真正的需求,您可能会有数千行,而不是只有 4 行。
-
@Meet 这不是面试问题,但是是的,一位同事用这个欺骗了我,他确实为我们的团队接受了面试:-)