Rub*_*uby 2 sql sql-server-2008
我在sql server 2008中有下表,有医院id和他们的部门:
HID DEPT
5 neuro
2 derma
3 cardio
2 ent
1 neuro
5 optha
3 ent
3 optha
4 derma
1 optha
5 derma
Run Code Online (Sandbox Code Playgroud)
需要使用sql获取它没有的id和部门名称列表.例如:
HID DEPT
1 derma
1 cardio
1 ent
2 cardio
2 neuro
2 optha
Run Code Online (Sandbox Code Playgroud)
等等谢谢
试试这个:
;WITH CTE AS
(
SELECT *
FROM ( SELECT DISTINCT HID
FROM YourTable) A
CROSS JOIN (SELECT DISTINCT DEPT
FROM YourTable) B
)
SELECT *
FROM CTE A
WHERE NOT EXISTS(SELECT 1 FROM YourTable
WHERE HID = A.HID AND DEPT = A.DEPT)
Run Code Online (Sandbox Code Playgroud)
这是一个带有演示的sqlfiddle.
| 归档时间: |
|
| 查看次数: |
132 次 |
| 最近记录: |