店舗コードを引数で受け取り、店舗名称を複数返すストアドプロシージャーを作成中です。
CURSORc_StoreName
(MchrCd IN VARCHAR2)
IS
Select 店舗略称 AS 店名
From 店舗マスタ
Where 店舗コード IN NVL(MchrCd,店舗コード)
引数の店舗コードは、複数可能としています。
よって、MchrCd は、下記のパターンで試してみましたが、うまくSelectできない場合があります。
どのように、SQLをかいたらよいか教えてください。
結果は以下のとおりです。
1).1店舗のとき 001
→ OK
2).1店舗のとき '001'
→ NG
3).2店舗以上のとき 001,002
→ NG
4).店舗コードなし ''
→ OK
No.3ベストアンサー
- 回答日時:
テーブル上の店舗コードがVARCHAR2(3)なのでしょうか?
最も簡素な解決は、
where MchrCd like '%'||店舗コード||'%' or MchrCd is null;
とすれば、それなりです。
効率が悪いのと、パラメータ次第で、誤動作しますけどね。
パラメータの指定様式を厳格化し、動的SQLを使のが、
最も正しい解決だとは思いますが。
早速、いただいた
where MchrCd like '%'||店舗コード||'%' or MchrCd is null;
を、試してみました。思うとおりの結果が出ました!(^^)!
動的SQLも検討してみます。動的SQLってなんだろうというところからの勉強ですが、がんばってみます。
ありがとうございました
No.2
- 回答日時:
パラメータの個数が変わる場合にSQLは埋め込めません。
動的SQLにする必要があります。ありがとうございました。
動的SQLを検討してみます。
勉強不足で、動的SQLがどんなものかわかっていません。もしご存知でしたら、参考などないでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 複数DBテーブルからのデータ取得 3 2022/05/17 15:02
- クーポン・割引券 ドラッグストアの割引クーポンについて。 質問から先に。 ドラッグストア複数チエーンのアプリを入れてい 2 2022/12/09 07:35
- 飲食店・レストラン 「チェーン店」=「フランチャイズチェーン店」ですか? 直営飲食店が複数ある場合の店は何と呼ばれるの? 2 2022/04/09 11:31
- 英語 ①普通名詞の所有格+②普通名詞で、①普通名詞に定冠詞の意味を付加したい場合の表現方法等について 23 2022/09/30 12:47
- 飲食店・レストラン ガスト100店舗閉店へ 3 2022/08/15 20:22
- その他(業種・職種) 風俗店の面接、契約に関する交通費について 1 2022/08/27 12:31
- レディース ZARAのオンラインで買ったものがサイズが合わず交換 してもらいに近くの店舗に持っていきたいのですが 0 2023/04/16 22:48
- その他(お金・保険・資産運用) 至急!【Wolt】各メニューの価格設定の簡単な計算方法 3 2023/03/05 11:58
- その他(買い物・ショッピング) お詫びの電話をガチャンと切る 2 2023/01/11 18:42
- Instagram 店舗に置いているインスタとフェイスブックへの登録お願いの紙。 1 2022/06/10 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CREATE テーブルでの複数外部...
-
Order by句でバインド変数を使...
-
Access終了時の最適化が失敗?
-
SQL 特定のカラムが最大値のレ...
-
10営業日前の日付を取得したい...
-
沿線コード
-
娘の学校から出た暗号解読です...
-
Excelファイルのデータをテーブ...
-
GROUP BYを行った後に結合した...
-
Oracleでの文字列連結サイズの上限
-
SELECTで1件のみ取得するには?
-
SQL文で右から1文字だけ削除す...
-
DataGridViewの内容をDBに反映...
-
select句副問い合わせ 値の個...
-
他のテーブルを参照した値はupd...
-
最新の日付とその金額をクエリ...
-
ADO VBA 実行時エラー3021
-
Accessで別テーブルの値をフォ...
-
ヘッダレコードとトレーラレコ...
-
ファイル書込みで一行もしくは...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access終了時の最適化が失敗?
-
CREATE テーブルでの複数外部...
-
Order by句でバインド変数を使...
-
沿線コード
-
SQLServer 日付が直前のレコー...
-
Excelファイルのデータをテーブ...
-
10営業日前の日付を取得したい...
-
SQLの実行結果が異なる
-
SQLに関して
-
【SQL】またぎデータの検索の仕方
-
SQLにて縦を横へ展開
-
ヤマト急便のチェックデジット...
-
スペシャリストの方! 助けてく...
-
SQL GROUP BY
-
娘の学校から出た暗号解読です...
-
SQLで<>を使用するとき、
-
GROUP BYを行った後に結合した...
-
Accessで別テーブルの値をフォ...
-
Oracleでの文字列連結サイズの上限
-
SELECTで1件のみ取得するには?
おすすめ情報