Вашето първо решение е почти готово, но е по-сложно, отколкото трябва и така или иначе няма да работи. Ще пропусне всички редове от последния ден на последния месец.
Можете да добавите един месец към end month
и след това използвайте BETWEEN на първо число на всеки месец. напр.
start month: 9 , start year: 2011
end month: 3, end year: 2012
BETWEEN '2011-09-01' AND '2012-04-01'
или, както посочва JNK, това ще бъде по-добре:
DataDelega >= '2011-09-01' AND DataDelega < '2012-04-01'
Ще трябва да добавите някаква логика, за да се справите с end month
е декември, но това изглежда като най-простият начин да го направите.