gpt4 book ai didi

sql根据特定列选择唯一行

转载 作者:行者123 更新时间:2023-12-01 23:17:19 24 4
gpt4 key购买 nike

我有一个这样的表:

Col1    Col2    Col3    Col4
asasa 1 d 44
asasa 2 sd 34
asasa 3 f 3
dssd 4 d 2
sdsdsd 5 sd 11
dssd 1 dd 34
xxxsdsds2 d 3
erewer 3 sd 3

我正在尝试根据 Col1

过滤掉类似这样的内容
Col1    Col2    Col3    Col4
asasa 1 d 44
dssd 4 d 2
sdsdsd 5 sd 11
xxxsdsds2 d 3
erewer 3 sd 3

我正在尝试根据 Col1 中的值获取所有唯一行。如果我在 Col1 中有重复项,则应采用第一行。

我尝试了 SELECT Col1 FROM tblname GROUP BY Col1 并得到了唯一的 Col1 但是使用 * 扩展它给我错误。

最佳答案

您应该能够使用如下内容实现您的目标:

WITH CTE AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY Col1 ORDER BY Col2) AS rn FROM MyTable
)
SELECT * FROM CTE WHERE rn = 1

它的作用是创建一个 CTE(通用表表达式),在 Col1 上添加一个 ROW_NUMBER,按 row2 中的数据排序。

在外部选择中,我们仅从生成的行号为 1 的 CTE 中获取行。

关于sql根据特定列选择唯一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68651755/

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