2

その式(またはテーブルセル)に数値以外の何かがある場合は1を返すように、SQLのパターンをチェックしたい。そのセル全体に数値しかない場合は0を返す必要がある

式:

case when '200290' like [anything other than numbers]
then 1
else o
4

2 に答える 2

2

SQL Server では、次のようなものを使用できます (関数全体を書いているわけではありません)。

DECLARE @t varchar(100) = '231321321321'

SELECT CASE WHEN PATINDEX('%[^0-9]%', @t) > 0 THEN 1
            ELSE 0 END
于 2011-10-07T17:42:44.343 に答える
0
SELECT CASE CHARACTERS(OTRANSLATE(<your_string>,'a1234567890','a')) 
WHEN 0 THEN 0 ELSE 1 END;

元。:

     -- BTEQ  Enter your SQL request or BTEQ command:
SELECT CASE CHARACTERS(OTRANSLATE('12345','a1234567890','a')) 
WHEN 0 THEN 0 ELSE 1 END;

* クエリが完了しました。1行見つかりました。1 つの列が返されました。※合計経過時間は1秒です。

<CASE  expression>
------------------
                 0

SELECT CASE CHARACTERS(OTRANSLATE('1a23b45c','a1234567890','a')) WHEN 0 THEN 0 ELSE 1 END;

* クエリが完了しました。1行見つかりました。1 つの列が返されました。※合計経過時間は1秒です。

<CASE  expression>
------------------
                 1
于 2011-10-28T10:45:07.573 に答える