簡體   English   中英

SQL Server組按問題

[英]SQL Server Group BY Question

我有下表:

CREATE TABLE #weeks(
  ProposalLineWeekID INT, 
  StartWeek DATETIME, 
  EndWeek DATETIME, 
  Selected BIT, 
  WeekNumber INT
)

如何獲取具有重復的WeekNumber條目的所有ProposalLineWeekID值? 例如

ProposalLineWeekID, WeekNumber 
------------------------------
2                   22
3                   6
4                   22

我想獲得帶有隨附的WeekNumber的ProposalLineWeekID 2和4。

嘗試這個:

SELECT ProposalLineWeekID, WeekNumber
FROM #Weeks
WHERE WeekNumber IN
( 
    SELECT WeekNumber
    FROM #weeks
    GROUP BY WeekNumber
    HAVING COUNT(*) > 1
)

子查詢查找所有重復的星期數,外部查詢獲取相應的行。

如果我正確理解,我想這就是你想要的:

SELECT DISTINCT w1.ProposalLineWeekID, w1.WeekNumber
FROM weeks w1
INNER JOIN weeks w2 ON w2.WeekNumber = w1.WeekNumber 
  AND w2.ProposalLineWeekID <> w1.ProposalLineWeekID

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM