1. ホーム
  2. sql

[解決済み] SQL Selectステートメントでブール値を返す

2022-02-10 17:34:12

質問

SQLのSelectステートメントでブール値を返すには?

次のコードを試してみました。

SELECT CAST(1 AS BIT) AS Expr1
FROM [User]
WHERE (UserID = 20070022)

を返すだけです。 TRUE もし UserID がテーブル上に存在します。を返すようにしたい。 FALSE もし UserID はテーブル上に存在しません。

どのように解決するのですか?

あなたが持っているものは、ユーザーが存在しない場合、行を全く返しません。必要なものは以下のとおりです。

SELECT CASE WHEN EXISTS (
    SELECT *
    FROM [User]
    WHERE UserID = 20070022
)
THEN CAST(1 AS BIT)
ELSE CAST(0 AS BIT) END