• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ストアドでif文)

ストアドでif文を使った条件分岐と日付データの処理方法

このQ&Aのポイント
  • ストアドでif文を使用して条件分岐を行い、データの読み込みや処理を行いたい場合の方法を教えてください。
  • また、日付のデータを入力している場合はそのデータを読み込んで処理したいですが、空の場合は日付を読み込まずに処理したいです。VBからストアドを読み込んでいるため、日付のデータ型変換にも困っています。
  • さらに、ストアドのWhere文についても質問したいです。特定の条件でデータを取得するためのWhere文の書き方や日付の比較方法を教えてください。ただし、日付が両方未入力の場合には「ある」データを取得したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.1

>(1)ストアドでif文をしたいんですがやり方が少し分からないんでお願いします SQL ServerですとストアドプロシージャですとIF文は以下のような記述になります。 IF 条件文 GO >VBの日付はMasked Textです Datetime型 StringからDatetime型に変換できないと出ます 出ますとは何が出るのでしょうか? >where ('1' = '100' OR ('1' <> '100' AND 受注残.工場番号 = '1')) AND ( 受注残.受注日 >= '2004/10/01' and 受注残.受注日 <= '2006/10/01') and ('2004/10/01' <> ''2006/10/01'' ) '1','100','20004/10/01'などをパラメータとして置き換えを行うということでしょうか? そうでしたら、'@1'のように表記をお願いします、ちょっとわかりずらいです。 SQLのDate型表記は#05/01/2009#となります。 >もし日付が両方、未入力なら日付未選択で「ある」データを取得したい 片方未入力なら、出来ましたが、両方未入力だと思うようにデータが取れません VBで制御なさるのでしたらいっそ、ストアド自体を日付未入力用と、入力済み用の2つを準備してはいかがでしょうか。 回答になっていないかもしてませんが、もう少し具体的な情報をいただけないと回答に困ってしまいます、補足をよろしくお願いいたします。

関連するQ&A