>Dunque la tabella è formata da una colonna di tipo datetime.
>Dentro ci sono n° righe suddivise per giorno.
>Quello che mi servirebbe è estrarre in modo ordinato (per giorno
>intendo) la lista dei giorni di un determinato mese in ordine
>crescente.
E dove sta il problema? ORDER BY colonna datetime.
>Purtoppo dalla query che ho postato prima il risultato è una
>sequenza di giorni ordinate cm fossero delle stringhe:
La query di prima è un obrobrio
Mi spieghi cortesemente cosa vuoi in output? Una stringa nel formato YYYY-MM-DD?
Se le cose stanno così potresti utilizzare una query simile a questa:
USE tempdb;
GO
CREATE TABLE dbo.Dates(
[Date] datetime NOT NULL
);
GO
SET NOCOUNT ON
INSERT dbo.Dates VALUES('20060510');
INSERT dbo.Dates VALUES('20060511');
INSERT dbo.Dates VALUES('20060512');
INSERT dbo.Dates VALUES('20060513');
INSERT dbo.Dates VALUES('20060515');
INSERT dbo.Dates VALUES('20060516');
INSERT dbo.Dates VALUES('20060517');
INSERT dbo.Dates VALUES('20060518');
INSERT dbo.Dates VALUES('20060519');
INSERT dbo.Dates VALUES('20060502');
INSERT dbo.Dates VALUES('20060520');
INSERT dbo.Dates VALUES('20060522');
INSERT dbo.Dates VALUES('20060523');
INSERT dbo.Dates VALUES('20060524');
INSERT dbo.Dates VALUES('20060525');
INSERT dbo.Dates VALUES('20060526');
INSERT dbo.Dates VALUES('20060527');
INSERT dbo.Dates VALUES('20060529');
INSERT dbo.Dates VALUES('20060503');
SET NOCOUNT OFF
GO
SELECT CONVERT(CHAR(10), [Date], 120) AS FormattedDate
FROM dbo.Dates
ORDER BY [Date];
GO
/* Output:
FormattedDate
-------------
2006-05-02
2006-05-03
2006-05-10
2006-05-11
2006-05-12
2006-05-13
2006-05-15
2006-05-16
2006-05-17
2006-05-18
2006-05-19
2006-05-20
2006-05-22
2006-05-23
2006-05-24
2006-05-25
2006-05-26
2006-05-27
2006-05-29
(19 row(s) affected)
*/
DROP TABLE dbo.Dates;
Se il risultato che vuoi è differente posta un esempio completo come ho fatto io, altrimenti non ne veniamo più fuori, OK?
>Ciao Grazie.
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org