2010-06-22 58 views
1

有沒有辦法在sql查詢的頂部包含一個空白行,例如,如果它是用於下拉列表? (MS SQL Server 2005或2008)在查詢結果中包含一個空行

Select * 
    FROM datStatus 
ORDER BY statusName 

,我想是這樣

-1 (please choose one) 
    1 Beginning 
    2 Middle 
    3 Ending 
    4 Canceled 

從一個表,通常是隻以上,但沒有頂行?

+0

您可以將列表項在您綁定後剛剛開始(可能伴隨着這裏發生),在這裏看起來更簡單一些。 – 2010-06-22 00:12:52

回答

6

我覺得這是更好的做到這一點以外的SQL,但如果你堅持......

SELECT -1, '(please choose one)' 
UNION 
SELECT * FROM datStatus 
ORDER BY statusName 
+0

我很難搞清楚如何在UI層中正確地做到這一點,但最終找到了答案。謝謝!我會接受這個,因爲它建議不在SQL中做,但仍然給出答案。 – 2010-06-22 00:24:32

+0

如果你說你正在使用什麼框架爲你的下拉列表(HTML?.Net?),它會更容易給你的替代... :) – Amadan 2010-06-22 01:52:25

+0

.NET dropdownlist,但我已經找到了解決方案在堆棧溢出的另一個答案。謝謝! – 2010-06-22 17:01:33

4

我發現在應用程序的表示層中最好這樣做,因爲根據上下文可能會有不同的要求。一般來說,我試圖讓我的數據服務層免除這些實現特定的規則。所以在你的情況下,我通常只需在列表的第一個位置添加一個索引的新項目,之後我用服務層中的數據加載它。

享受!

+0

+1,儘管這不是我所需要的。在這種情況下,我在asp表示層中使用了asp.net sqldatasource,並且我需要一些已經具有正確值的東西,因爲我將數據源綁定到了radgrid中的下拉列表。 – 2010-08-05 16:04:24

2

如何將第一行與查詢的其餘部分結合在一起?

Select -1,'(please choose one)' 
union all 
select * FROM datStatus ORDER BY statusName 
+1

儘管我一般都同意道格認爲它應該在UI層中處理。 – Jubal 2010-06-22 00:13:39

相關問題