[解決済み] MySQL selectクエリのIF ELSEIF
2022-03-12 06:14:12
質問
ユーザーが選択した数量に応じて、異なる価格の商品を選択しようとしています。 これは、私が取り組んでいるクエリです(構文エラーがあります)。
select id,
(SELECT
IF(qty_1<='23',price,1)
ELSEIF(('23'>qty_1 && qty_2<='23'),price_2,1)
ELSEIF(('23'>qty_2 && qty_3<='23'),price_3,1)
ELSEIF('23'>qty_3,price_4,1)
END IF) as total
from product;
解決方法は?
ストアドプロシージャで使用したものがある
このように
を参考にすることができますが、今のような使い方は想定していません。このような場合
IF
のように
duskwuff
. しかし
Case
文の方が目に優しいです。こんな感じで。
select id,
(
CASE
WHEN qty_1 <= '23' THEN price
WHEN '23' > qty_1 && qty_2 <= '23' THEN price_2
WHEN '23' > qty_2 && qty_3 <= '23' THEN price_3
WHEN '23' > qty_3 THEN price_4
ELSE 1
END) AS total
from product;
この方がすっきりして見えますね。内側の
SELECT
とにかく
関連
-
[解決済み】MySQLのエラーコードです。MySQL WorkbenchでUPDATE中に1175のエラーが発生しました。
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] SQLのSELECTでIF...THENを実行するにはどうすればよいですか?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLのクエリ結果をCSV形式で出力するにはどうすればよいですか?
-
[解決済み] MySQL - SELECTクエリに基づくUPDATEクエリ
-
[解決済み] MySQL ERROR 1045 (28000)。ユーザー 'bill'@'localhost' (使用パスワード: YES)のアクセスが拒否されました。
-
[解決済み] MySql でクエリ実行時に only_full_group_by に関連するエラーが発生する。
-
[解決済み】ホスト 'xxx.xx.xxx.xxx' がこのMySQLサーバーへの接続を許可されていない。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】SQL文が動作しない-「オペランド型の衝突:dateはintと互換性がない」。
-
[解決済み】MAMPのmysqlサーバーが起動しない。mysqlのプロセスが起動していない
-
[解決済み】「docker container run」は最低1つの引数を必要とする
-
[解決済み] MySQLの グループ関数の無効な使用
-
[解決済み] MySQLで日付のみのパラメータを使用してタイムスタンプの日付を比較する方法は?
-
[解決済み] mysql 拡張は非推奨で、将来的に削除されます: 代わりに mysqli か PDO を使ってください [重複] 。
-
[解決済み] テーブルのストレージエンジンは修復をサポートしていません。InnoDB または MyISAM?
-
[解決済み] MySQLクエリ GROUP BY 日/月/年
-
[解決済み] MySQLから最後のN行を選択する
-
[解決済み] MySQLの グループ関数の無効な使用