0

私は次の@tempテーブルを持っています:

------------------------------------
|Condition_ID   Operator   Order    |
|     1            ==        1      |
|     2            <>        3      |
|     3            ==        2      |
------------------------------------

オペレーターに応じて特定のメッセージを出力するSELECTCASEを実装したい

Incorrect syntax near the keyword 'PRINT'.しかし、これは私にエラーをスローします。

SELECT CASE
    WHEN Operator LIKE '=='
        THEN PRINT 'EQUALS'
    WHEN Operator LIKE '<>'
        THEN PRINT 'NOT EQUALS'
END AS Operator
FROM @temp

私は何が間違っているのですか?

4

4 に答える 4

1

PRINT混合することはできません。SELECT

SELECT CASE WHEN Operator LIKE '=='
            THEN 'EQUALS'
            WHEN Operator LIKE '<>'
            THEN 'NOT EQUALS'
       END AS Operator
FROM @temp
于 2012-11-27T10:56:27.247 に答える
1

を削除するだけです。PRINT

SELECT CASE
    WHEN Operator LIKE '=='
        THEN 'EQUALS'
    WHEN Operator LIKE '<>'
        THEN 'NOT EQUALS'
END AS Operator
FROM @temp

PRINTa内で aを使用することはできず、SELECTその必要もありませんSELECT。 は適切な値を取得します。

于 2012-11-27T11:00:35.750 に答える
0

これは動作します::

   SELECT CASE
    WHEN opr LIKE '=='
        THEN 'EQUALS'
    WHEN opr LIKE '<>'
        then 'NOT EQUALS'
    else
        'wrong i/p'
    end
as operator
FROM tbl1;
于 2012-11-27T11:05:12.673 に答える
0

これを試してください。印刷オプションはありません

SELECT CASE 
        WHEN Operator LIKE '=='
        THEN 'EQUALS'
        WHEN Operator LIKE '<>'
        THEN 'NOT EQUALS'
   END AS Operator
   FROM @temp
于 2012-11-27T11:07:05.117 に答える