我有一個查詢,我選擇了超過15件事情,因此在結果中獲得(多於)15列。我選擇的一些東西是大CASE語句。 T-SQL當然會按順序顯示您的結果,而不是您在SELECT
聲明中列出的內容。更改結果中顯示的列的順序,而不更改選擇順序
有沒有辦法有不同的順序,以幫助我對他們的檢查顯示的結果列,而不
一)重新排序它們是如何選擇(因爲我需要每一個做到這一點一次,我想比較其他兩列並排側)
即不要想改變:SELECT a,b,c,d,e,f
到SELECT f,d,a,b,c,e
由於自動對焦均可以是5-10行代碼
b)拖動 - N在結果中彼此相鄰的下一列,因爲如果我想將列2放在第9列旁邊和第14欄,所有三個都在結果表的末尾,那麼這會拖延很多事情。
C)知道選擇什麼,而不是列名的列數
我正在尋找的是一些類似於:
Select
vi.Name
,vi.Height
,vi.Power
,case when tt.losses < 3
then 'Y'
else 'N'
end as MasteryKen
,tt.blahnum
,vi.blahtext
,vi.blahdate
,vi.blahcalc
,tt.blahflag
,vi.blahflag
,vi.blahcompare
From SenshiVitalInfo vi
Join TatakauTable tt
on vi.namecd=tt.namecd
OrderOutputResults by tt.blahflag, vi.blahflag, *
難道一個函數來完成的最後一行存在於T-SQL(SQL Server 2008)中?
爲什麼列順序很重要?表示層不能處理列/表達式別名並按照它想要的順序排列它們?另外,如果您將每個表達式放在一行中,移動它們不應該很容易嗎?您只需選擇整行,剪切並粘貼... –
SQL Server旨在存儲和獲取數據 - 它不是用來處理您可能想要的所有可能的顯示選項。使用查詢從SQL Server中獲取數據 - 列的順序是**不相關的** - 然後將其顯示在前端應用程序中,如Web應用程序或任何其他應用程序,並處理列的排序** **。 –
表示層?我的表達式佔用了幾行。想象一下激光聲明 - 切割,粘貼和移動相當麻煩。 – VISQL