[解決済み] SQLのSELECTでIF...THENを実行するにはどうすればよいですか?
2022-03-17 20:53:09
質問
を実行するにはどうすればよいのでしょうか?
IF...THEN
の中に
SQL SELECT
ステートメントを使用しますか?
例えば、こんな感じです。
SELECT IF(Obsolete = 'N' OR InStock = 'Y' ? 1 : 0) AS Saleable, * FROM Product
解決方法は?
その
CASE
ステートメントは、SQL の IF に最も近いもので、SQL Server のすべてのバージョンでサポートされています。
SELECT CAST(
CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END AS bit) as Saleable, *
FROM Product
を使うだけです。
CAST
演算子は、結果をブール値として受け取りたい場合に使用します。もし
int
であれば、問題ありません。
SELECT CASE
WHEN Obsolete = 'N' or InStock = 'Y'
THEN 1
ELSE 0
END as Saleable, *
FROM Product
CASE
ステートメントは、他の
CASE
ステートメント、さらにはアグリゲートに含まれます。
SQL Server Denali (SQL Server 2012)では、このような問題を解決するために IIF ステートメントを使用することができます。 アクセス (で指摘された)。 マーティン・スミス ):
SELECT IIF(Obsolete = 'N' or InStock = 'Y', 1, 0) as Saleable, * FROM Product
関連
-
MySQL】1136 - 列数が1行目の値数と一致しない問題を解決
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] ...値に挿入する ( SELECT ... FROM ... )
-
[解決済み] SQL Server にテーブルが存在するかどうかを確認する
-
[解決済み] SQLのIN句をパラメータ化する
-
[解決済み] Postgres でサブクエリを使用してテーブルの行を更新する
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
plsql-stored-procedure ORA-06550 エラー処理
-
[解決済み] SQL Server : 列を行に変換する
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] テーブルネーミングのジレンマ:単数形と複数形の名前【非公開
-
[解決済み] SQL ServerでJOINを使用してUPDATE文を実行するにはどうすればよいですか?
-
[解決済み] SQL Server における DateTime2 と DateTime の比較
-
[解決済み] SQL SELECT WHERE フィールドに単語が含まれる場合
-
[解決済み] mysqldumpで特定のテーブルをスキップする
-
[解決済み] NOT IN vs NOT EXISTS
-
[解決済み] DISTINCTでCOUNT(*)を選択する