如何根据mysql中包含的值选择表的列名

时间:2012-09-17 09:34:51

标签: mysql

您好我有一张名为 test 的表格。它有7列 id,a,b,c,d,e,f。所有这些列都包含1或0.现在我想做一个查询,我只能选择那些值为的列1。

这样的事情:

select (condition) from test where id = 5;  

因为我有一个50列的酒店表,其中11列包含1或0代表酒店的设施。我想提出一个询问,告诉我们酒店的设施。

任何帮助都会很棒。

2 个答案:

答案 0 :(得分:0)

使用sql可以选择行,而不是列

如果是你想要的那样你可以像这样建立你的查询

select id, a, b, c, d -- columns to select
from test  -- table
where (a = 1 or b=1 or c = 1 or d = 1) -- these are the conditions

答案 1 :(得分:0)

选择id,(a * 64)+(b * 32)+(c * 16)+(d * 8)+(e * 4)+(f * 2)+(g * 1) 来自测试

这个号码可以反转它以转换为7位二进制代码。

例子: 18 = 0010010,1000000 = 64