Q&A

回答の並べ替え:
投稿新規に質問を投稿する

SQLパラメーターについて

kmtfo kmtfo

2025-06-12 15:42

いつもお世話になっております。

SQL文の中でパラメーターを使用すると"パラメーターの番号が正しくありません"となり、エラーになってしまいます。

UNION句を使うと条件内でパラメーターを使えないんでしょうか。
パラメーターを使わない場合は正常に動きます。

よろしくお願いします。

エラーになるSQLは以下になります。
SELECT
列名1,
列名2
FROM
テーブル1
WHERE
列名3 BETWEEN %パラメーター1% AND %パラメーター2%

UNION ALL

SELECT
列名1,
列名2
FROM
テーブル1
WHERE
列名3 BETWEEN %パラメーター1% AND %パラメーター2%

kmtfo kmtfo
回答ありがとうござます。

UNION句を使っていてもパラメーターは使用できるのですね。
もう少し調べてみます。
日本コンピュータシステム(CELFチーム) 日本コンピュータシステム(CELFチーム) パートナー
こんにちは。

試しに下記SQLで実行してみたところ
正常終了して値もUNION ALLされた行数分取得されました。
その為、なぜそのようなエラーが出ているかは分からないのですが、
UNION句を使っても条件内でパラメーターを使うことはできるようです。


SELECT
社員番号
FROM
社員情報
WHERE
入社年月日 BETWEEN %p1% AND %p2%

union all

SELECT
社員番号
FROM
社員情報
WHERE
入社年月日 BETWEEN %p1% AND %p2%

メールコンタクトをとる