我有一个带有以下各列的表“ forms”:
id,名称,desc,exporter1,exporter2,exporter3
我的意图是获取那些列的值等于特定值的列名。
考虑“表单”表中的以下行,
1,test1,testdesc,1,0,1
2,test2,testdesc,1,1,1
3,test3,testdesc,0,1,0
因此查询应向我返回值等于“ 1”的列名。
对于第一行,返回值应为-“ exporter1,exporter3”。
对于第二行-“ exporter1,exporter2,exporter3”。
对于第三行-“ exporter2”。
最佳答案
您可以使用所需的所有字段从信息架构生成查询
SELECT
id,
CONCAT_ws (',',
IF ( exporter1 = 1, 'exporter1',NULL),
IF ( exporter2 = 1, 'exporter2',NULL),
IF ( exporter2 = 3, 'exporter3',NULL)
)
FROM forms;
关于mysql - MySQL选择表的column_names具有给定行的特定值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34892979/