Zapytania MSSQL Server

0

Witam,
Ma ktoś pomysł jak zdefiniować zapytanie sql, które zwróci wszystkie rekordy z lat od 2005 do 2009 oprócz marca 2008? W tabeli "ZAKUPY" dysponuję polem DATETIME o nazwie "DATA". Z góry bardzo dziękuję za pomoc i pozdrawiam :-)

0
WHERE data BETWEEN CAST('2005-01-01T00:00:00.000' AS datetime) AND CAST('2008-02-29T23:59:59.999' AS datetime) OR data BETWEEN CAST('2008-04-01T00:00:00.000' AS datetime) AND CAST('2009-12-31T23:59:59.999' AS datetime)
0

Misiek, po co te casty? data between '20050101' and '20080229T2359.997' or data ....

.999 nie jest prawidłową wartością ms dla mssql, tj. nie uzyskasz tego, czego oczekujesz: http://technet.microsoft.com/en-us/library/ms187819.aspx

0
select * from Tabela
where (Year(Data) between 2005 and 2009) and (Year(Data) <> 2008 or Month(Data) <> 3)

1 użytkowników online, w tym zalogowanych: 0, gości: 1