gpt4 book ai didi

sql - 选择 DISTINCT,返回整行

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

我有一个包含 10 列的表格。我想返回 Col006 不同的所有行,但返回所有列...

我该怎么做?

如果第 6 列显示如下:

| Column 6 |
| item1 |
| item1 |
| item2 |
| item1 |

我想返回两行,其中一行包含 item1,另一行包含 item2,以及所有其他列。

最佳答案

SQL Server 2005 及更高版本中:

;WITH    q AS
(
SELECT *, ROW_NUMBER() OVER (PARTITION BY col6 ORDER BY id) rn
FROM mytable
)
SELECT *
FROM q
WHERE rn = 1

SQL Server 2000 中,假设您有主键列:

SELECT  mt.*
FROM (
SELECT DISTINCT col6
FROM mytable
) mto
JOIN mytable mt
ON mt.id =
(
SELECT TOP 1 id
FROM mytable mti
WHERE mti.col6 = mto.col6
-- ORDER BY
-- id
-- Uncomment the lines above if the order matters
)

更新:

检查您的数据库版本和兼容性级别:

SELECT  @@VERSION

SELECT COMPATIBILITY_LEVEL
FROM sys.databases
WHERE name = DB_NAME()

关于sql - 选择 DISTINCT,返回整行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3519648/

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