0

このようなクエリがあります。

select value, date from table
where date in ('date1','date2','date3','date4','date5')
group by date

これにより、指定された日付のレコードがある場合にのみ結果が得られます。ただし、指定された日付のレコードがない場合でも、値が「0」の行を取得したいと思います。これどうやってするの?

5 | 02/04/2012
8 | 02/05/2012
3 | 02/06/2012
4 | 02/08/2012

>>

5 | 02/04/2012
8 | 02/05/2012
3 | 02/06/2012
0 | 02/07/2012
4 | 02/08/2012
4

1 に答える 1

1

日付テーブルを使用するか、日付を使用して一時テーブルを作成する必要があります。ただし、サイズが小さく効率が良いため、日付テーブルが最適なオプションになります。

また、を誤って使用していGROUP BYます。GROUPBYへのMySQL拡張機能をお読みください。

于 2013-02-22T15:01:06.433 に答える