连接BIT和NVARCHAR列的简单方法

时间:2011-07-30 02:52:51

标签: asp.net sql data-binding webforms

MyTable
=======
Item NVARCHAR(200)
Hidden BIT

我需要以MyTable格式加载DropDownList中的所有项目,格式为:项目(隐藏)

我的列表如下所示:

Brush
Table (Hidden)
Box (Hidden)
PC
Ball

N.B:我在搜索这个SQL条目时已达到:

SELECT        ID, Item + '(' + CAST(Hidden AS NVARCHAR(200)) + ')' AS Conct
FROM            Items

返回项目(0)或项目(1)

..我想不出一个简单的方法可以用于我的目的,但我想我会将隐藏列更改为NVARCHAR并将隐藏或空白存储在其中..或者可能添加另一个存储单词的列'隐藏'隐藏(BIT)列中的任何'1'。你觉得怎么样?

2 个答案:

答案 0 :(得分:1)

您可以使用CASE语句:

SELECT ID, 
       Item + (CASE Hidden WHEN 1 THEN ' (Hidden)' ELSE '' END) AS Conct
FROM Items

答案 1 :(得分:1)

你可以做一个案例:

SELECT ID, Item + (CASE Hidden
                             WHEN 1 THEN '(Hidden)'
                             ELSE ''
                        END) AS Conct
FROM   Items

当隐藏为1时,为“隐藏”一词添加另一列将是多余的。