gpt4 book ai didi

mysql - 连接两个缩进选择查询以获得不同列中的不同行

转载 作者:行者123 更新时间:2023-11-29 12:17:04 27 4
gpt4 key购买 nike

我的选择查询总是返回一个包含一列但多行的表。我现在想要修改查询以将其中包含完全相同数据的列附加到表中,然后将第一行限制为 1,将第二行限制为 1,2(我想获得某个结果的“Top X”,每个结果都在不同的列中。)

我当前的无效查询如下所示:

SELECT tag1, tag2 FROM
(
(SELECT tag1...) AS t1
JOIN
(SELECT tag2...) AS t2
);

不幸的是,连接的列在每行中包含相同的值:

Top1    Top2
1234 1234
4321 1234
6543 1234
8765 1234

结果应该是这样的:

Top1    Top2
1234 1234
4321 4321
6543 6543
8765 8765

这样我就可以选择 Top1 列中的第一个值和 Top2 列中的第二个值。因此最终结果应该是:

Top1    Top2
1234 4321

我怎样才能实现这一点,为什么我的查询不起作用?

最佳答案

当 Top1 是最后一个值时,您希望为 Top2 显示什么?

试试这个:(也进行编辑以获取 tag3)

SELECT tag1, tag2, tag3 FROM
(
(SELECT tag1...) AS t1
LEFT JOIN
(SELECT tag2...) AS t2
ON(t1.tag1 < t2.tag2)
LEFT JOIN (SELECT tag3...) AS t3
ON(t2.tag2 < t3.tag3)
) LIMIT(1);

这将为您提供 tag2 列中 tag1 的下一个值。当然,您不会经历两列具有相同值的步骤。

请注意,添加的左连接越多,执行时间就越慢。

关于mysql - 连接两个缩进选择查询以获得不同列中的不同行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29634608/

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