mysql - SQLITE 查询基于列的值检索列名

标签 mysql sql sqlite

您好,我查看了这些论坛,我需要有关根据值获取列名称的帮助。

例如我有一个表:

|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 dynamically by Specific row value .

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

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

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

最佳答案

如果列很少并且名称固定,你可以使用这个:-

select case when col1 == 92 then col1 
            when col2 == 92 then col2 
            when col3 == 92 then col3
       end
  from tab;

关于mysql - SQLITE 查询基于列的值检索列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18182214/

相关文章:

java - 2 个 Servlet 之间的通信不适用于数据库

sql - PostgreSQL 如何返回元组 {a,b} 但不返回元组 {b,a}?

mysql - 如何计算行中的datediff

c - 从 sqlite3_column_blob() 方法获取的指针是否需要删除?

Python/Sqlite3 - 有没有办法以编程方式设置 .nullvalue?

python - 使用python将csv文件导入Mysql数据库

mysql - 从另一个表插入数据

java - 通过jdbc批量插入记录时内存不足

javascript - store如何查询Mysql

php - 在 WordPress 中发布分页