如何创建一个String值来表示select结果中的某些值?

时间:2011-09-09 16:03:34

标签: sql sql-server string replace

在我的选择中我有这个结果:

name | type |
-----+------+
booo | A    |
xooo | B    |
dooo | A    |

我需要在SQL SERVER中用一种方法来替换A代表“Abstract”而B代替“Ball” 谢谢, 塞尔索

4 个答案:

答案 0 :(得分:3)

使用此映射创建另一个表并使用连接。

type | long_name |
-----+-----------+
  A  | Abstract  |
  B  | Ball      |
  C  | Cat       |

答案 1 :(得分:2)

WITH Strings(type,description)
AS
(
SELECT 'A', 'Abstract' UNION ALL
SELECT 'B', 'Ball' 
)
SELECT y.foo, s.description
FROM YourTable y
JOIN Strings S ON S.type = y.type

答案 2 :(得分:1)

您还可以查看SQL Server中的CASE函数,具体取决于您要执行的操作。

http://msdn.microsoft.com/en-us/library/ms181765.aspx

答案 3 :(得分:0)

选择名称为“名称”,

   (case type
    when 'A' then 'Abstract'
    when 'B' then 'Ball'
    end) as "Type"

来自MyTable

按名称排序