gpt4 book ai didi

php - MySql - 获取最小、最大和 3 个随机行

转载 作者:IT王子 更新时间:2023-10-29 00:31:13 26 4
gpt4 key购买 nike

我想要一个 MySql 查询来获取 5 行,其中包括最低价格行、最高价格行和其他 3 个随机行。

表:

ID  Product Price
1 data 2
2 data 20
3 data 55
4 data 24
5 data 2
6 data 15
7 data 10
8 data 33
9 data 3
10 data 30

预期结果(随机 3 行)

ID  Product Price
1 data 2
3 data 55
4 data 24
6 data 15
7 data 10

任何帮助将不胜感激!

最佳答案

SELECT table.*
FROM table
, ( SELECT @minPrice := ( SELECT min(Price) FROM table ) minPrice
, @minId := ( SELECT id FROM table WHERE Price = @minPrice ORDER BY rand() LIMIT 1 )
, @maxPrice := ( SELECT max(Price) FROM table ) maxPrice
, @maxId := ( SELECT id FROM table WHERE Price = @maxPrice ORDER BY rand() LIMIT 1 )
) tmp
WHERE table.id in (@minId,@maxId)
UNION
(SELECT *
FROM table
WHERE Price not in (@minPrice,@maxPrice)
ORDER BY rand()
LIMIT 3
)

关于php - MySql - 获取最小、最大和 3 个随机行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44565328/

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