1
我需要創建一個報告,用戶可以切換數據從區域>區>委員會>事件。我使用我無法更改的設置數據視圖。我需要定義一個區域和一個區域,因爲它們在數據庫中沒有正確定義,然後將它們相互關聯。我已經接近,因爲我能夠分配17個不同的「DistrictCodes」 - 是啊,他們有代碼,但使用CASE語句時,沒有正確的調查侷限於彌補地區:在SSMS中結合案例陳述
CASE WHEN DistrictCode LIKE 'DST10%' THEN 4
WHEN DistrictCode LIKE 'DST13%' THEN 2
WHEN DistrictCode LIKE 'DST1%' THEN 2
WHEN DistrictCode LIKE 'DST2%' THEN 2
WHEN DistrictCode LIKE 'DST3%' THEN 3
WHEN DistrictCode LIKE 'DST5%' THEN 3
WHEN DistrictCode LIKE 'DST7%' THEN 2
WHEN DistrictCode LIKE 'DST8%' THEN 1
WHEN DistrictCode LIKE 'DSTC4%' THEN 3
WHEN DistrictCode LIKE 'DSTC6%' THEN 2
WHEN DistrictCode LIKE 'DSTC9%' THEN 1
WHEN DistrictCode LIKE 'DT11%' THEN 4
WHEN DistrictCode LIKE 'DT12%' THEN 4
WHEN DistrictCode LIKE 'DT15%' THEN 4
WHEN DistrictCode LIKE 'DT16%' THEN 4
WHEN DistrictCode LIKE 'DT17%' THEN 4
WHEN DistrictCode LIKE 'UP17%' THEN 4
WHEN DistrictCode LIKE 'UPL11%' THEN 4
ELSE 5
END AS Region
使用「區描述」數據我可以創建區:
CASE WHEN DistrictDesc IN ('1' , '1A' , '1B') THEN 'District 1'
WHEN DistrictDesc IN ('2' , '2A' , '2B' , '2C') THEN 'District 2'
WHEN DistrictDesc IN ('3' , '3A' , '3B') THEN 'District 3'
WHEN DistrictDesc IN ('4' , '4A' , '4B' , '4C' , '4D' , '4E' , '4F') THEN 'District 4'
WHEN DistrictDesc IN ('5' , '5A' , '5B' , '5C') THEN 'District 5'
WHEN DistrictDesc IN ('6' , '6A') THEN 'District 6'
WHEN DistrictDesc IN ('7' , '7A' , '7B') THEN 'District 7'
WHEN DistrictDesc IN ('8' , '8A' , '8B' , '8C') THEN 'District 8'
WHEN DistrictDesc IN ('9' , '9A') THEN 'District 9'
WHEN DistrictDesc IN ('10' , '10A' , '10B' , '10C') THEN 'District 10'
WHEN DistrictDesc IN ('11' , '11A' , '11B' , '11C') THEN 'District 11'
WHEN DistrictDesc IN ('12' , '12A' , '12B' , '12C') THEN 'District 12'
WHEN DistrictDesc IN ('13' , '13A') THEN 'District 13'
WHEN DistrictDesc IN ('14' , '14A' , '14B' , '14C' , '14D') THEN 'District 14'
WHEN DistrictDesc IN ('15' , '15A' , '15B' , '15C' , '15D') THEN 'District 15'
WHEN DistrictDesc IN ('16' , '16A' , '16B' , '16C') THEN 'District 16'
WHEN DistrictDesc IN ('17' , '17A' , '17B') THEN 'District 17'
ELSE ISNULL (DistrictDesc,'No District')
END AS District
這返回的查詢工作在SSMS,但是當我預覽VS報表生成器的報告中,我需要設置區域作爲報告的參數。無論我是爲區域設置值還是從查詢中檢索值,我都會在區域的預覽中獲得1,2,3,4和5(我的區域)的倍數。
我怎樣才能得到它只返回一次1,2,3,4或5?有沒有一種方法可以將這些結合起來。如果我使用Distinct,那麼我會錯過一些不是我的數據?我已經嘗試使用IN並列出每個區碼,但返回了相同的問題。
你的權利!我重寫了這個查詢,並且在我重寫時忽略了它的正確嵌套。謝謝! – user1729778