如果列已經出現,我想折疊行...
SQL Server - 表結構:
CREATE TABLE Docs
(
Area varchar(max),
RootFolder varchar(max),
SubFolder varchar(max),
)
原始資料:
| 區域 | 根檔案夾 | 子檔案夾 |
|---|---|---|
| 一 | 12345 | |
| 一 | 12345 | 6789 |
| 一 | 12345 | AAAAA |
| 一 | 中國交建 | |
| 一 | DDDDDD | |
| 一 | DDDDDD | FFFFFF |
| 一 | DDDDDD | GGGG |
我想要:
| 區域 | 根檔案夾 | 子檔案夾 |
|---|---|---|
| 一 | 12345 | 6789 |
| 一 | 12345 | AAAAA |
| 一 | 中國交建 | |
| 一 | DDDDDD | FFFFFF |
| 一 | DDDDDD | GGGG |
我已經嘗試過 group bys 和其他視窗功能,但我不知道如何獲得我想要的輸出
uj5u.com熱心網友回復:
您想要顯示所有作為子檔案夾或不存在子檔案夾的行。
select *
from docs
where subfolder is not null
or not exists
(
select null
from docs sub
where sub.area = docs.area
and sub.rootfolder = docs.rootfolder
and sub.subfolder is not null
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/432423.html
下一篇:將列透視到SQL中的行
