我怎樣才能只得到相同ID但不一樣的資料Name?
以下是解釋我的想法的例子。謝謝。
ID Name Date
123 Amy 08/03/2022
123 Amy 12/03/2022
456 Billy 08/03/2022
456 Cat 09/03/2022
789 Peter 10/03/2022
預期輸出:
ID Name Date
456 Billy 08/03/2022
456 Cat 09/03/2022
我是怎么做的。
select ID, Name, count(*)
from table
groupby ID, Name
having count(*) > 1
但結果包括以下我不想要的部分。
ID Name Date
123 Amy 08/03/2022
123 Amy 12/03/2022
uj5u.com熱心網友回復:
一種方法是使用子查詢來識別ID具有多個名稱的 s。
SELECT *
FROM YourTable
WHERE ID IN (SELECT ID FROM YourTable GROUP BY ID HAVING COUNT(DISTINCT Name) > 1)
uj5u.com熱心網友回復:
你想要
SELECT * FROM table_name
WHERE ID = 456;
要么
SELECT * FROM table_name
WHERE ID IN
(SELECT
ID,
COUNT(DISTINCT name)
FROM table_name
GROUP BY ID
HAVING COUNT(DISTINCT name) > 0
);
?
uj5u.com熱心網友回復:
我會像這樣將表加入到它的自身中:
SELECT DISTINCT
*
FROM
Test as a
INNER JOIN Test as b
ON A.Id = B.Id
WHERE
A.[Name] <> B.[Name]

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/438759.html
