Problema:
Vorresti convertire una stringa in una data nel tuo set di risultati.
Esempio:
Il nostro database ha una tabella denominata accounts_creation
, con un campo denominato company_id
del tipo di dati NUMBER e due campi NVARCHAR2 denominati company_name
e registration_date
come mostrato di seguito.
company_id | nome_azienda | data_registrazione |
---|---|---|
1 | Decathlon | 5 gennaio 1978 |
2 | Vestello | 21 settembre 1991 |
3 | Cappella Bianca | 18 ottobre 2017 |
4 | Coppa d'argento | 4 dicembre 2021 |
5 | Johnny Bros | 28 agosto 1984 |
Vogliamo convertire la colonna della stringa registration_date
in una colonna di data.
Soluzione:
Useremo il TO_DATE()
funzione. Ecco la domanda:
SELECT company_id, company_name, TO_DATE(registration_date,'DD Mon YEAR') AS registration_date FROM accounts_creation;
Ecco il risultato della query:
company_id | nome_azienda | data_registrazione |
---|---|---|
1 | Decathlon | 05-GEN-78 |
2 | Vestello | 21-SEP-91 |
3 | Cappella Bianca | 18-OTTOBRE-17 |
4 | Coppa d'argento | 4-DIC-21 |
5 | Johnny Bros | 28-AGOSTO-84 |
Discussione:
Il TO_DATE(string, format)
La funzione in Oracle converte un valore stringa in una data. La funzione accetta due argomenti:la stringa da convertire e il formato della data. Nella specifica del formato, DD
indica il giorno del mese (1-31), MON indica il nome abbreviato del mese e YEAR
indica l'anno a 4 cifre. Puoi leggere ulteriori informazioni sui formati disponibili nella documentazione di Oracle SQL qui.