gpt4 book ai didi

mysql - 具有 IN 条件的自定义订单

转载 作者:行者123 更新时间:2023-11-29 10:20:25 25 4
gpt4 key购买 nike

我的查询是:

select * from table where id IN (1,5,4,3,2)

我想要的与这个顺序完全相同,不是从1...5,而是从1,5,4,3,2。我怎样才能做到这一点?

最佳答案

MYSQL 的 FIELD 函数和 ORDER BY 可以在这里提供帮助。

SELECT 
*
FROM
[table]
WHERE
id IN (1,5,4,3,2)
ORDER BY
FIELD(id, 1,5,4,3,2)

negatieve FIELD(id, 1,5,4,3,2) 无法使用 id 列上的索引。

或者没有功能FIELD

SELECT 
*
FROM (

SELECT
1 AS number
UNION
SELECT
5 AS number
UNION
SELECT
4 AS number
UNION
SELECT
3 AS number
UNION
SELECT
2 AS number
)
AS numbers
INNER JOIN
[table]
ON
[table].id = numbers.number

正数可以在 id 列上使用索引。
负数由于提供的表格而难以理解

关于mysql - 具有 IN 条件的自定义订单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49365925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com