Metodi specifici per convertire i dati di tipo data in stringhe in SQL

La conversione dei dati di tipo data in stringhe in SQL è spesso necessaria in varie applicazioni di database. Diversi sistemi di gestione di database (DBMS) hanno funzioni e metodi unici, quindi è importante conoscere la tecnica appropriata. Questo articolo illustra i metodi di conversione per MySQL, PostgreSQL, SQL Server, Oracle e SQLite.

Indice

Conversione dei dati di tipo data in stringhe in MySQL

In MySQL, è possibile utilizzare la funzione DATE_FORMAT per convertire i dati di tipo data in una stringa con un formato specifico. Questa funzione supporta vari formati e consente una formattazione flessibile delle date.

Come utilizzare la funzione DATE_FORMAT

La sintassi di base della funzione DATE_FORMAT è la seguente:

DATE_FORMAT(date, format)
  • date: I dati di tipo data che si desidera convertire
  • format: La stringa che specifica il formato di conversione

Esempi di utilizzo

Ecco alcuni esempi specifici:

  1. Conversione in formato Anno-Mese-Giorno
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d') AS formatted_date;

Questa query restituisce la data corrente nel formato “2024-05-23”.

  1. Conversione in formato Mese/Giorno/Anno
SELECT DATE_FORMAT(NOW(), '%m/%d/%Y') AS formatted_date;

Questa query restituisce la data corrente nel formato “05/23/2024”.

  1. Conversione in un formato che include il giorno della settimana
SELECT DATE_FORMAT(NOW(), '%W, %M %d, %Y') AS formatted_date;

Questa query restituisce la data corrente nel formato “giovedì, 23 maggio 2024”.

Elenco dei specificatori di formato

I principali specificatori di formato che possono essere utilizzati con la funzione DATE_FORMAT di MySQL sono i seguenti:

  • %Y: Anno a quattro cifre (es. 2024)
  • %y: Anno a due cifre (es. 24)
  • %M: Nome completo del mese (es. gennaio)
  • %m: Mese a due cifre (es. 05)
  • %d: Giorno a due cifre (es. 23)
  • %H: Ora a due cifre (formato 24 ore, es. 14)
  • %i: Minuti a due cifre (es. 59)
  • %s: Secondi a due cifre (es. 30)
  • %W: Nome del giorno della settimana (es. giovedì)

Combinando questi specificatori, è possibile convertire una data nel formato richiesto.

Successivamente, vediamo come convertire i dati di tipo data in stringhe in PostgreSQL.

Conversione dei dati di tipo data in stringhe in PostgreSQL

In PostgreSQL, è possibile utilizzare la funzione TO_CHAR per convertire i dati di tipo data in una stringa con un formato specifico. Questa funzione consente una formattazione flessibile delle date utilizzando specificatori di formato.

Come utilizzare la funzione TO_CHAR

La sintassi di base della funzione TO_CHAR è la seguente:

TO_CHAR(date, format)
  • date: I dati di tipo data che si desidera convertire
  • format: La stringa che specifica il formato di conversione

Esempi di utilizzo

Ecco alcuni esempi specifici:

  1. Conversione in formato Anno-Mese-Giorno
SELECT TO_CHAR(NOW(), 'YYYY-MM-DD') AS formatted_date;

Questa query restituisce la data corrente nel formato “2024-05-23”.

  1. Conversione in formato Mese/Giorno/Anno
SELECT TO_CHAR(NOW(), 'MM/DD/YYYY') AS formatted_date;

Questa query restituisce la data corrente nel formato “05/23/2024”.

  1. Conversione in un formato che include il giorno della settimana
SELECT TO_CHAR(NOW(), 'Day, Month DD, YYYY') AS formatted_date;

Questa query restituisce la data corrente nel formato “giovedì, 23 maggio 2024”.

Elenco dei specificatori di formato

I principali specificatori di formato che possono essere utilizzati con la funzione TO_CHAR di PostgreSQL sono i seguenti:

  • YYYY: Anno a quattro cifre (es. 2024)
  • YY: Anno a due cifre (es. 24)
  • MM: Mese a due cifre (es. 05)
  • DD: Giorno a due cifre (es. 23)
  • HH24: Ora a due cifre (formato 24 ore, es. 14)
  • MI: Minuti a due cifre (es. 59)
  • SS: Secondi a due cifre (es. 30)
  • Day: Nome del giorno della settimana (es. giovedì)
  • Month: Nome del mese (es. maggio)

Combinando questi specificatori, è possibile convertire una data nel formato richiesto.

Successivamente, vediamo come convertire i dati di tipo data in stringhe in SQL Server.

Conversione dei dati di tipo data in stringhe in SQL Server

In SQL Server, è possibile utilizzare le funzioni CONVERT e FORMAT per convertire i dati di tipo data in stringhe. Ogni funzione offre scopi diversi e metodi per specificare i formati.

Come utilizzare la funzione CONVERT

La sintassi di base della funzione CONVERT è la seguente:

CONVERT(varchar, date, style)
  • varchar: Il tipo di dato della stringa convertita
  • date: I dati di tipo data che si desidera convertire
  • style: Il valore intero che specifica lo stile di formato

Esempi di utilizzo

  1. Conversione in formato Anno-Mese-Giorno
SELECT CONVERT(varchar, GETDATE(), 23) AS formatted_date;

Questa query restituisce la data corrente nel formato “2024-05-23”.

  1. Conversione in formato Mese/Giorno/Anno
SELECT CONVERT(varchar, GETDATE(), 101) AS formatted_date;

Questa query restituisce la data corrente nel formato “05/23/2024”.

Come utilizzare la funzione FORMAT

La sintassi di base della funzione FORMAT è la seguente:

FORMAT(value, format, culture)
  • value: I dati di tipo data che si desidera convertire
  • format: La stringa che specifica il formato di conversione
  • culture: Informazioni sulla cultura (opzionale)

Esempi di utilizzo

  1. Conversione in formato Anno-Mese-Giorno
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd') AS formatted_date;

Questa query restituisce la data corrente nel formato “2024-05-23”.

  1. Conversione in formato Mese/Giorno/Anno
SELECT FORMAT(GETDATE(), 'MM/dd/yyyy') AS formatted_date;

Questa query restituisce la data corrente nel formato “05/23/2024”.

  1. Conversione in un formato che include il giorno della settimana
SELECT FORMAT(GETDATE(), 'dddd, MMMM dd, yyyy') AS formatted_date;

Questa query restituisce la data corrente nel formato “giovedì, 23 maggio 2024”.

Elenco degli stili di formato (funzione CONVERT)

I principali stili che possono essere utilizzati con la funzione CONVERT sono i seguenti:

  • 101: MM/DD/YYYY (es. 05/23/2024)
  • 103: DD/MM/YYYY (es. 23/05/2024)
  • 104: DD.MM.YYYY (es. 23.05.2024)
  • 110: MM-DD-YYYY (es. 05-23-2024)
  • 111: YYYY/MM/DD (es. 2024/05/23)
  • 120: YYYY-MM-DD HH:MI:SS (es. 2024-05-23 14:30:00)

Specificando questi stili, è possibile utilizzare la funzione CONVERT per convertire le date in stringhe in vari formati.

Successivamente, vediamo come convertire i dati di tipo data in stringhe in Oracle.

Conversione dei dati di tipo data in stringhe in Oracle

In Oracle, è possibile utilizzare la funzione TO_CHAR per convertire i dati di tipo data in una stringa con un formato specifico. Questa funzione supporta specifiche di formato flessibili, consentendo di convertire i dati di tipo data in vari formati di stringa.

Come utilizzare la funzione TO_CHAR

La sintassi di base della funzione TO_CHAR è la seguente:

TO_CHAR(date, format)
  • date: I dati di tipo data che si desidera convertire
  • format: La stringa che specifica il formato di conversione

Esempi di utilizzo

Ecco alcuni esempi specifici:

  1. Conversione in formato Anno-Mese-Giorno
SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD') AS formatted_date FROM dual;

Questa query restituisce la data corrente nel formato “2024-05-23”.

  1. Conversione in formato Mese/Giorno/Anno
SELECT TO_CHAR(SYSDATE, 'MM/DD/YYYY') AS formatted_date FROM dual;

Questa query restituisce la data corrente nel formato “05/23/2024”.

  1. Conversione in un formato che include il giorno della settimana
SELECT TO_CHAR(SYSDATE, 'Day, Month DD, YYYY') AS formatted_date FROM dual;

Questa query restituisce la data corrente nel formato “giovedì, 23 maggio 2024”.

Elenco dei specificatori di formato

I principali specificatori di formato che possono essere utilizzati con la funzione TO_CHAR di Oracle sono i seguenti:

  • YYYY: Anno a quattro cifre (es. 2024)
  • YY: Anno a due cifre (es. 24)
  • MM: Mese a due cifre (es. 05)
  • MON: Abbreviazione del mese (es. MAG)
  • MONTH: Nome completo del mese (es. MAGGIO)
  • DD: Giorno a due cifre (es. 23)
  • D: Giorno della settimana (es. 5)
  • DAY: Nome completo del giorno della settimana (es. GIOVEDÌ)
  • HH24: Ora in formato 24 ore (es. 14)
  • MI: Minuti a due cifre (es. 59)
  • SS: Secondi a due cifre (es. 30)

Combinando questi specificatori, è possibile convertire una data nel formato richiesto.

Successivamente, vediamo come convertire i dati di tipo data in stringhe in SQLite.

Conversione dei dati di tipo data in stringhe in SQLite

In SQLite, è possibile utilizzare la funzione strftime per convertire i dati di tipo data in una stringa con un formato specifico. Questa funzione supporta specifiche di formato flessibili, consentendo di convertire i dati di tipo data in vari formati di stringa.

Come utilizzare la funzione strftime

La sintassi di base della funzione strftime è la seguente:

strftime(format, date)
  • format: La stringa che specifica il formato di conversione
  • date: I dati di tipo data che si desidera convertire

Esempi di utilizzo

Ecco alcuni esempi specifici:

  1. Conversione in formato Anno-Mese-Giorno
SELECT strftime('%Y-%m-%d', 'now') AS formatted_date;

Questa query restituisce la data corrente nel formato “2024-05-23”.

  1. Conversione in formato Mese/Giorno/Anno
SELECT strftime('%m/%d/%Y', 'now') AS formatted_date;

Questa query restituisce la data corrente nel formato “05/23/2024”.

  1. Conversione in un formato che include il giorno della settimana
SELECT strftime('%w, %B %d, %Y', 'now') AS formatted_date;

Questa query restituisce la data corrente nel formato “4, 23 maggio 2024”.

Elenco dei specificatori di formato

I principali specificatori di formato che possono essere utilizzati con la funzione strftime di SQLite sono i seguenti:

  • %Y: Anno a quattro cifre (es. 2024)
  • %y: Anno a due cifre (es. 24)
  • %m: Mese a due cifre (es. 05)
  • %d: Giorno a due cifre (es. 23)
  • %H: Ora a due cifre (formato 24 ore, es. 14)
  • %M: Minuti a due cifre (es. 59)
  • %S: Secondi a due cifre (es. 30)
  • %w: Numero del giorno della settimana (0: domenica, 6: sabato)
  • %W: Nome completo del giorno della settimana (es. giovedì)
  • %B: Nome completo del mese (es. maggio)

Combinando questi specificatori, è possibile convertire una data nel formato richiesto.

Infine, riassumiamo i metodi per convertire i dati di tipo data in stringhe in ciascun DBMS e forniamo punti chiave sulla selezione e l’uso delle funzioni appropriate.

Riepilogo

Abbiamo discusso i metodi per convertire i dati di tipo data in stringhe in vari sistemi di gestione di database (DBMS). Ecco un riepilogo delle funzioni utilizzate in ciascun DBMS e dei punti chiave:

  • MySQL: Utilizzare la funzione DATE_FORMAT e gli specificatori di formato per convertire le date in stringhe. Esempi includono '%Y-%m-%d' e '%M %d, %Y'.
  • PostgreSQL: Utilizzare la funzione TO_CHAR e combinare specificatori di formato per convertire le date in stringhe. Esempi includono 'YYYY-MM-DD' e 'MM/DD/YYYY'.
  • SQL Server: Utilizzare le funzioni CONVERT o FORMAT, specificando codici di stile o stringhe di formato per convertire le date in stringhe. Esempi includono 101 e 'yyyy-MM-dd'.
  • Oracle: Utilizzare la funzione TO_CHAR e ricchi specificatori di formato per convertire le date in stringhe. Esempi includono 'YYYY-MM-DD' e 'Day, Month DD, YYYY'.
  • SQLite: Utilizzare la funzione strftime e specificatori di formato per convertire le date in stringhe. Esempi includono '%Y-%m-%d' e '%m/%d/%Y'.

Comprendendo le funzioni e i specificatori di formato unici di ciascun DBMS e utilizzandoli in modo appropriato, è possibile convertire i dati di tipo data in stringhe nel formato richiesto. Questa conoscenza è utile in varie situazioni, come la creazione di report, l’analisi dei dati e l’integrazione dei dati tra sistemi.

Indice