如截圖所示,對於不同的id,我想選擇所有具有公共updateTime的行。例如,在這裏,所有三個ID都具有相同的updateTime 9:30:02和9:30:04。因此,我想選擇第3行和第4行(對於id 211709),第6和第8行(對於id 301801),第9和第10行(對於id 931801),我想選擇所有這6行。我應該寫什麼sql代碼?提前致謝!!!T-SQL,選擇行
-2
A
回答
3
當你需要返回只更新時間這是所有 ID的共同點,你可以使用這樣的查詢:
SELECT * FROM MyTable WHERE UpdateTime IN (
SELECT DISTINCT UpdateTime
FROM MyTable
GROUP BY UpdateTime
HAVING (SELECT COUNT(DISTINCT c.Id) FROM MyTable c WHERE c.UpdateTime = UpdateTime) = COUNT(DISTINCT Id)
)
如果您想知道HAVING
子句的作用 - 對於每個UpdateTime您檢查具有此UpdateTime的ID的數量是否等於ID的總數。
+0
謝謝大家,很好的幫助! – Michael
1
該查詢會給你所發生的所有更新時間不止一次
Select UpdateTime
From MyTable
Group By UpdateTime
Having Count (*) > 1
使用此作爲一個子查詢
Select *
From MyTable
Where UpdateTime IN
(
Select UpdateTime
From MyTable
Group By UpdateTime
Having Count (*) > 1
)
相關問題
- 1. TSQL - 選擇插入的行
- 2. TSQL一個從2條件選擇行
- 3. TSQL選擇逗號列表到行
- 4. TSQL從表中選擇最後10行?
- 5. TSQL隨機選擇選擇標準
- 6. TSQL分組/選擇幫助
- 7. TSQL - while循環內選擇?
- 8. 選擇在where子句TSQL
- 9. 從聯盟中選擇tsql
- 10. TSQL - 爲選擇的每一行執行代碼
- 11. TSQL選擇運行總數的隨機行
- 12. TSQL從其他表中選擇其中
- 13. 使用XLOCK ROWLOCK選擇TSQL死鎖
- 14. TSQL按周選擇最後一個值?
- 15. 使用TSQL選擇XML節點
- 16. TSQL從多個表中選擇
- 17. TSQL - 選擇計數(*)..到Varchar變量
- 18. Sybase TSQL如何選擇沒有'-`字符
- 19. TSQL:更新與插入選擇從
- 20. TSQL有條件地選擇特定值
- 21. tsql - 從選擇語句更新表
- 22. TSQL多個選擇的統計信息
- 23. TSQL/MSSQL選擇 - 填零整數
- 24. TSQL選擇記錄的最後日期
- 25. TSQL選擇沒有多餘的文字
- 26. TSQL版本2008-R2 - 遞歸選擇
- 27. TSQL內嵌機箱內選擇
- 28. TSQL選擇到一個變量
- 29. 如何選擇行作爲TSQL視圖的列?
- 30. 使用TSQL SQL Server有條件地選擇行(2008 R2)
任何人,任何解決方案?請幫忙,謝謝! – Michael