gpt4 book ai didi

mysql - SQL:根据两列的串联获取唯一行

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

我需要一个 SQL 语句,该语句将根据两列的串联派生出唯一的行列表。

给定这组数据,我希望结果能够删除重复行,其中重复行被定义为 Column1 和 Column2 的串联。

事情:

ID    Column1    Column2        Column3
1 a z L
2 b y G
3 b y G
4 a y H
5 a z L

这是我想到的:

SELECT DISTINCT ( Column1 || Column2 ) FROM things

结果:

az
by
ay

这工作正常,但是它只派生出 Column1 和 Column2 的唯一串联的列表,

我还需要返回 Column3,如下所示:

Column1    Column2    Column3
a z L
b y G
a y H

这不起作用:

SELECT DISTINCT ( Column1 || Column2 ), Column3 FROM things

因为它返回的行数超出了需要的行数。

如何构建 SQL 语句来根据两列的串联得出唯一行的所需结果? Column3 是否唯一也没关系。

最佳答案

如果您只想为 Column3 指定任意值:

select column1, column2, min(Column3)
from table t
group by column1, column2;

您可以使用group_concat()来获取所有值。

关于mysql - SQL:根据两列的串联获取唯一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29803614/

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