1

SQL还很陌生,遇到了一个让我难过的问题。解释我正在尝试做的事情会更容易。我有一个表,其中有一列t.number包含 4、6 或我不感兴趣的东西。它对应于一个文本字段,t.text。这是我想做的伪代码:

if (t.number == 4)
   t.text as ImAFour
else if (t.number == 6)
   t.text as ImASix

我尝试写的所有内容都以重复输入或覆盖而告终。有任何想法吗?

4

1 回答 1

2

您可以尝试以下方法:

SELECT
    CASE t.number WHEN 4 THEN t.text ELSE '' END AS ImAFour,
    CASE t.number WHEN 6 THEN t.text ELSE '' END as ImASix,
    ....
FROM table t

确切的语法将取决于您的 RDBMS,原始问题中没有标记。

于 2012-10-23T04:51:56.380 回答