- PR -

一ヶ月のデータを取りたい

1
投稿者投稿内容
comeseesee
会議室デビュー日: 2005/10/17
投稿数: 2
投稿日時: 2005-10-17 18:24
いつもお世話になります。
SQL SERVER2000で、指定された期間内のすべてのデータを取りたいですが、

SELECT * FROM table WHERE date BETWEEN @start_date and @end_date

以上のSQL文はtableにある日付のデータしか取れなくて、
指定された期間内の日付を生成し、tableにない日付のデータをnullで返すようなSQL文はどう書けばいいですか?
でっち6号
大ベテラン
会議室デビュー日: 2005/01/31
投稿数: 176
お住まい・勤務地: Kawasaki
投稿日時: 2005-10-17 19:36
こんにちは、でっちです。

残念ながら単体のSQLでは取得できません。
以下の何れかの方法を取ることになります。

・予め全日付が格納されたテーブルを用意してJoinする。
・ストアドプロシージャを使用する。
・データ取得後、利用プログラム側で編集する。
comeseesee
会議室デビュー日: 2005/10/17
投稿数: 2
投稿日時: 2005-10-19 16:53
でっち様
ご回答ありがとうございました。
ストアドプロシージャを使用し、日付を格納する一時テーブルを作成する方法にしました。
1

スキルアップ/キャリアアップ(JOB@IT)