这里给出的图像是我的表格。是否可以选择值为false且id = 2的字段。就像我传递id = 2时它应该返回字段名称sun。
答案 0 :(得分:3)
您可以使用case
语句和concat_ws()
:
select id,
concat_ws(',',
(case when sun = 'false' then 'sun' end),
(case when mon = 'false' then 'mon' end),
(case when tue = 'false' then 'tue' end),
(case when wed = 'false' then 'wed' end),
(case when thu = 'false' then 'thu' end),
(case when fri = 'false' then 'fri' end),
(case when sat = 'false' then 'sat' end)
)
from table t
where id = 2;
答案 1 :(得分:0)
尝试类似:
SELECT CASE WHEN sun = 'false' then 'sun' END
WHEN mon = 'false' then 'mon' END
WHEN tue = 'false' then 'tue' END
WHEN wed = 'false' then 'wed' END
WHEN thu = 'false' then 'thu' END
WHEN fri = 'false' then 'fri' END
WHEN sat = 'false' then 'sat' END
END AS MyColumn
FROM MyTable
WHERE id = 2