2

您好,我查看了这些论坛,我需要帮助来获取基于值的列名称。

例如,我有一个表,例如:

|Name  | Column1 | Column2 | Column3|
|-----------------------------------|
|Peter | 100     | 120     | 92     |
|-----------------------------------|
|James | 110     | 105     | 88     |
|-----------------------------------|
|David | 90      | 112     | 98     |

我想查询值为 92 的 Peter,我需要查询返回 Column3。

我知道非常基本的sql,并没有真正使用sqlite来深入理解它。

我进行了搜索,发现最好的是这个线程,它确实有一个适用于 mysql 的解决方案:Get column name dynamic by Specific row value

我对此进行了测试,它完全符合我的要求。当然,它不适用于 sqlite。

我需要知道这是否可以使用 sqlite 完成,如果可以,正确的语法是什么?我再次知道非常基本的 SQL。

如果有人有任何提示/建议,我将不胜感激。

4

1 回答 1

1

如果列很少并且名称固定,您可以使用它:-

select case when col1 == 92 then col1 
            when col2 == 92 then col2 
            when col3 == 92 then col3
       end
  from tab;
于 2013-08-12T08:26:41.440 回答