gpt4 book ai didi

mysql - 在 MySQL 结果旁边重复运行数字

转载 作者:太空宇宙 更新时间:2023-11-03 12:08:00 25 4
gpt4 key购买 nike

这看起来应该是相当普遍的事情,所以这可能就像为我所描述的内容提供正确的词汇一样简单。

我想返回一个查询的结果,并且在一个列中我想返回一个重复的数字序列 1、2、3。

期望的结果集:

Num    Result
---------------
1 result1
2 result2
3 result3
1 result4
2 result5

现在我可以使用 basic 返回一个包含三个数字的基本列表:

SELECT @ROW := @ROW + 1 AS ROW FROM 'use any table with data in it' t join (SELECT @ROW := 0) t2 LIMIT 3

我只是找不到将它与我的查询混合以返回我想要的结果的方法。我想出的最好结果返回重复的 1、2、3,但会针对每个数字重复查询中的每个项目(如您所料)。

Num    Result
---------------
1 result1
2 result1
3 result1
1 result2
2 result2

关于如何实现这一点有什么想法吗?

编辑:

CREATE TABLE Results (Result varchar(10));
INSERT INTO Results (`Result`) VALUES ('result1');
INSERT INTO Results (`Result`) VALUES ('result2');
INSERT INTO Results (`Result`) VALUES ('result3');
INSERT INTO Results (`Result`) VALUES ('result4');
INSERT INTO Results (`Result`) VALUES ('result5');

CREATE TABLE Randoms (Random varchar(10));
INSERT INTO Randoms (`Random`) VALUES ('whatever1');
INSERT INTO Randoms (`Random`) VALUES ('whatever2');
INSERT INTO Randoms (`Random`) VALUES ('whatever3');

--Initial Query
SELECT Result

FROM Results

ORDER BY Result ASC;


--Closest I've come (not close enough)
SELECT b.Num,
a.Result

FROM Results a,
(SELECT @ROW := @ROW + 1 AS Num FROM Randoms t join (SELECT @ROW := 0) t2 LIMIT 3) b

ORDER BY a.Result ASC;

最佳答案

我认为你可以做到这一点......

SELECT MOD(i,3)+1
, result
FROM
( SELECT @i:=@i+1 i
, result
FROM results
, ( SELECT @i:=2 ) vals
ORDER
BY result
) x;

关于mysql - 在 MySQL 结果旁边重复运行数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25591773/

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