gpt4 book ai didi

mysql - 如何在Mysql中同时获取数据

转载 作者:太空宇宙 更新时间:2023-11-03 11:45:02 24 4
gpt4 key购买 nike

我有如下表格:

id----image----type  
1-----a.png----1
2-----b.png----1
3-----c.png----2
4-----d.png----1
5-----e.png----2

现在我想按以下顺序获取数据(首先输入 1,然后输入 2,然后输入 1,依此类推):

1-----a.png----1  
3-----c.png----2
2-----b.png----1
5-----e.png----2
4-----d.png----1

那么如何实现呢?

到目前为止我有以下查询:

SELECT 
*
FROM `table`
WHERE (TYPE =1 OR TYPE =2)
ORDER BY TYPE

最佳答案

例如

Select x.* from mytable x 
join mytable y on y.type =x.type and y.id <= x.id
group by x.id
order by count(*),x.type

或更快 - 我认为 @1000111 试图达到...

SELECT x.id
, x.image
, x.type
FROM
( SELECT a.*
, CASE WHEN @prev = type THEN @i:=@i+1 ELSE @i:=1 END rank
, @prev := type
FROM your_table a
, (SELECT @i:=0, @prev:=null) vars
ORDER
BY type
, id
) x
ORDER
BY rank
, type;

http://sqlfiddle.com/#!9/3e27c/8

关于mysql - 如何在Mysql中同时获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39384715/

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