在mysql的表中搜索列名称中的特定行值

时间:2014-05-28 20:08:11

标签: php mysql sql sql-server columnname

我有一张桌子" ABCD"我的员工名称有20个不同的列(根据要求,这是该组织最好的表结构),现在我需要编写一个SQL查询来查找"列名称&#34 ;对于特定行(比如id 3),它具有特定值(比如c)。

ID | Col1 | Col2 | Col3 | Col4 | Col5 | Col6
--------------------------------------------
1  | A    | B    | C    | C    | B    | A
2  | C    | B    | A    | A    | C    | B
3  | B    | A    | C    | B    | A    | C

我需要获得所有"列名称"它有价值" c"在id" 3"。

的行中

1 个答案:

答案 0 :(得分:2)

你应该重新考虑数据库设计

    select 'col1' from abcd where id=3 and col1='C'
    union
    select 'col2' from abcd where id=3 and col2='C'
    union
    ...

您可以轻松地在PHP中动态生成此脚本