Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come visualizzare una data in formato britannico in SQL Server (T-SQL)

Questo articolo mostra come formattare in modo esplicito una data nel formato inglese della Gran Bretagna quando si utilizza il T-SQL FORMAT() funzione in SQL Server.

Potrebbe essere necessario o meno utilizzare questo argomento, a seconda della lingua della sessione locale. Tuttavia, ecco come specificare in modo esplicito il formato della data in inglese della Gran Bretagna.

Esempio 1 – Formato data britannico breve

Per specificare esplicitamente che una data deve essere visualizzata nel formato inglese Gran Bretagna, utilizzare en-gb come argomento della cultura:

DECLARE @thedate date = '2020-12-01'
SELECT FORMAT(@thedate, 'd', 'en-gb') Result;

Risultato:

+------------+
| Result     |
|------------|
| 01/12/2020 |
+------------+

In questo caso, ho usato un d minuscolo come secondo argomento. Ciò si traduce in un formato di data relativamente breve, con il giorno e il mese visualizzati come numeri.

E poiché utilizziamo il formato inglese della Gran Bretagna, il giorno viene prima del mese (questo è in contrasto con il formato della data statunitense, dove il mese precede il giorno).

Esempio 2 – Formato data britannico lungo

Puoi cambiare il secondo argomento in una D maiuscola per ottenere un formato di data più lungo, con il mese esplicitato:

DECLARE @thedate date = '2020-12-01'
SELECT FORMAT(@thedate, 'D', 'en-gb') Result;

Risultato:

+------------------+
| Result           |
|------------------|
| 01 December 2020 |
+------------------+

Esempio 3 – Formato data britannico personalizzato

Se necessario, puoi anche utilizzare un formato di data personalizzato. Ciò ti consente di dichiarare in modo esplicito esattamente come e dove va ogni componente della data.

Esempio:

DECLARE @thedate date = '2020-12-01'
SELECT FORMAT(@thedate, 'ddd, d MMM, yyyy', 'en-gb') Result;

Risultato:

+------------------+
| Result           |
|------------------|
| Tue, 1 Dec, 2020 |
+------------------+

Continuo a specificare una cultura anche se sto specificando esattamente dove va ogni componente della data. Il motivo per cui lo sto facendo è indicare esplicitamente quale lingua usare. L'omissione di questo argomento può causare o meno problemi, a seconda delle lingue utilizzate.

Verifica della sessione corrente

Quando si utilizza FORMAT() funzione, se l'argomento culture non viene fornito, viene utilizzata la lingua della sessione corrente. Questa lingua viene impostata in modo implicito o esplicito utilizzando il SET LANGUAGE dichiarazione.

Per ulteriori informazioni, ecco 3 modi per ottenere la lingua della sessione corrente in SQL Server (T-SQL).

Vedere anche Come impostare la lingua corrente in SQL Server (T-SQL).