Ordinare date g/m/aaaa in ordine cronologico senza campo data

martedì 13 ottobre 2009 - 14.46

miomiomio Profilo | Junior Member

aiutissimo!!

ho un database con una tabella e un campo dove inserisco date sottoforma di testo 13/10/2009 5/4/2009 ecc... g/m/aaaa

come posso fare per far ordinare la query che me le richiama tutte in ordine di data?

se io inserisco nell'ordine:

13/10/2009
10/10/2009
14/10/2009
9/10/2009

c'è modo di riordinarle senza utilizzare un campo data nel database?

grazie

alx_81 Profilo | Guru

>ho un database con una tabella e un campo dove inserisco date
>sottoforma di testo 13/10/2009 5/4/2009 ecc... g/m/aaaa
già questo non è un gran che.. come mai questa scelta discutibile?

>come posso fare per far ordinare la query che me le richiama tutte in ordine di data?
>c'è modo di riordinarle senza utilizzare un campo data nel database?
sì, c'è. Ma è brutto e poco performante. Basta trasformare la data stringa in formato ISO SSAAMMGG.
Un modo può essere questo:

SELECT CampoData FROM Tabella ORDER BY YEAR(CampoData) * 10000 + MONTH(CampoData) * 100 + DAY(CampoData)

veramente bruttino. Se riesci, usa il datatype corretto che è il Data/Ora.

>grazie
di nulla!

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

miomiomio Profilo | Junior Member

grazie!!

ho provato il tuo geniale suggerimento ma in effetti ho visto che cambiando in access il datatype che conteneva le date in campi testo le ha lasciate invariate (mettendo il datatype in data gg/mm/aaaa)

grazieeeeeeeeeeeeeeeeeeeeeeee

ciaoo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5