У меня возникли проблемы с получением записей для следующих
TABLE id | holiday_From | holiday_To 1 | 2012-01-02 | 2012-01-03 1 | 2012-01-11 | 2012-01-16 1 | 2012-01-08 | 2012-01-22 1 | 2012-01-29 | 2012-01-30 1 | 2012-01-08 | 2012-01-11
Я пытаюсь получить случаи праздников в течение определенного месяца – т.е.
BETWEEN "2012-01-01" AND "2012-01-31"
есть аналогичная запись, но я не могу ее настроить для моих нужд
RESULT day (within range) | count() //number of ppl on holiday DATE | 3
например,
SAMPLE OUTPUT 2012-01-02 | 1 2012-01-03 | 1 2012-01-08 | 2 2012-01-09 | 2 2012-01-10 | 2 2012-01-11 | 3 2012-01-12 | 2 2012-01-13 | 2 2012-01-14 | 2 2012-01-15 | 2 2012-01-16 | 2 ......
Другими словами, я пытаюсь получить, сколько раз запись найдена для определенной даты. Т.е. сколько людей в отпуске на 1-й, 2-й и 3-й и т.д.
Не каждый день находится в ТАБЛИЦЕ за каждый месяц
Есть идеи?
ps это то, что у меня уже (мой выстрел в темноте)
SELECT h.holiday_From, h.holiday_To, COUNT( * ) FROM holiday h JOIN holiday ho ON h.holiday_From BETWEEN DATE( "2012-01-01" ) AND IF( DATE( "2012-01-31" ) , DATE( "2012-01-31" ) , DATE( "2012-01-01" ) ) GROUP BY h.holiday_From, h.holiday_To