我有不同的列,名为bit_SocietyTypeBunglow,bit_SocietyTypeFlat等用作标志。现在我想为所有设置为true(即等于1)的标志检索适当的名称('Bungalow','Flat'等)作为我可以在程序中的组合框中使用的列表。
这是我尝试过的,但它给我的名字是colums,而不是行。
BEGIN
SELECT
CASE WHEN bit_SocietyTypeBunglow = 1 THEN 'Bunglows' ELSE NULL END AS Bunglow,
CASE WHEN bit_SocietyTypeFlat = 1 THEN 'Flats' ELSE NULL END AS Flat,
CASE WHEN bit_SocietyTypePent = 1 THEN 'Pent Houses' ELSE NULL END AS Pent_House,
CASE WHEN bit_SocietyTypeRow = 1 THEN 'Row Houses' ELSE NULL END AS Row_House
FROM tblSocietyDetail WHERE str_SocietyName = @strSocietyName
实际上我的表及其列是这样的: table data
我希望我的组合像这样填充: combobox
我正在使用存储过程来编写此查询
答案 0 :(得分:1)
让我们看看我是否理解正确。如果社团只有这两个,你想在你的组合框中有条目“Flats”和“Pent Houses”。要获得每个条目的记录,您必须多次选择该表:
SELECT 'Bunglows'
FROM tblsocietydetail
WHERE str_societyname = @strSocietyName
AND bit_societytypebunglow = 1
UNION
SELECT 'Flats'
FROM tblsocietydetail
WHERE str_societyname = @strSocietyName
AND bit_societytypeflat = 1
UNION
SELECT 'Pent Houses'
FROM tblsocietydetail
WHERE str_societyname = @strSocietyName
AND bit_societytypepent = 1
UNION
SELECT 'Row Houses'
FROM tblsocietydetail
WHERE str_societyname = @strSocietyName
AND bit_societytyperow = 1;