sql - 根据另一列的值选择特定列

标签 sql sql-server tsql

我有一张这样的 table

ID | Type | Val0 | Val1
1  |  0   |  A   | NULL
2  |  1   | NULL |  B

当类型为0时,我需要选择Val0,当类型为1时,我需要选择Val1,当类型为N时,我需要选择ValN。 ..

我怎样才能做到这一点?

最佳答案

SELECT CASE
          WHEN Type = 0 THEN Val0
          WHEN Type = 1 Then Val1
          .
          .
          WHEN Type = N Then ValN
       END 
  FROM tbl

关于sql - 根据另一列的值选择特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3338710/

相关文章:

mysql - 如何在 SQL 上划分具有特定行数的表(并重新排列)?

SQL Server 添加值

sql - 从 SQL/SSRS 2005 中的每一行中选择最大日期的列名

sql - 将范围列表展平为单个结果范围集

sql - 共享存储过程

sql - 在 SQL Server 中的给定日期之间按周生成报告

c# - 数据库恢复后查询超时

sql-server - 由于事件事务,SQL Server 日志已满

sql-server - 频繁删除后需要重组/重建索引吗?

java - 用值列表替换字符串中的模式 (SQL)