在CASE - SQL中选择语句

Bul*_*bul 4 sql sql-server select case sql-server-2012

我试图找出以下逻辑的正确代码.如果第一列中存在特定值,则显示该特定记录的第二列中的值.有人可以帮忙吗?谢谢.

CASE WHEN TableA.Column1 = 'a' THEN 'select TableA.Column2 '
     WHEN TableA.Column4 = 'b' THEN 'select TableA.Column5'

     ELSE TableA.Column6
END AS [Test]
Run Code Online (Sandbox Code Playgroud)

Pரத*_*ீப் 6

你几乎有刚刚取出selectcase statement.由于所有值都来自同一个表,因此不需要select在case语句中保持column name它将获取相应的列值.

SELECT CASE
         WHEN Column1 = 'a' THEN Column2
         WHEN Column4 = 'b' THEN Column5
         ELSE Column6
       END AS [Test]
FROM   tableA 
Run Code Online (Sandbox Code Playgroud)