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

Sådan vises en dato i britisk format i SQL Server (T-SQL)

Denne artikel demonstrerer, hvordan man eksplicit formaterer en dato i engelsk engelsk format, når man bruger T-SQL FORMAT() funktion i SQL Server.

Du behøver muligvis ikke bruge dette argument, afhængigt af sproget på din lokale session. Men her er, hvordan du eksplicit specificerer Storbritanniens engelske datoformat.

Eksempel 1 – Kort britisk datoformat

Brug en-gb for eksplicit at angive, at en dato skal vises i engelsk format. som kulturargumentet:

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

Resultat:

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

I dette tilfælde brugte jeg et lille d som det andet argument. Dette resulterer i et relativt kort datoformat, hvor dagen og måneden vises som tal.

Og fordi vi bruger Storbritannien engelsk format, kommer dagen før måneden (dette er i modsætning til det amerikanske datoformat, hvor måneden kommer før dagen).

Eksempel 2 – Langt britisk datoformat

Du kan ændre det andet argument til et stort D for at resultere i et længere datoformat med måneden angivet:

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

Resultat:

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

Eksempel 3 – Brugerdefineret britisk datoformat

Du kan også bruge et brugerdefineret datoformat, hvis det kræves. Dette giver dig mulighed for eksplicit at angive præcis, hvordan og hvor hver datokomponent går hen.

Eksempel:

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

Resultat:

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

Jeg angiver stadig en kultur, selvom jeg angiver præcis, hvor hver date-komponent går hen. Grunden til, at jeg gør dette, er for eksplicit at angive, hvilket sprog der skal bruges. Udeladelse af dette argument kan muligvis forårsage problemer, afhængigt af de sprog, der bruges.

Tjekker din aktuelle session

Når du bruger FORMAT() funktion, hvis kulturargumentet ikke er angivet, bruges sproget for den aktuelle session. Dette sprog indstilles enten implicit eller eksplicit ved at bruge SET LANGUAGE erklæring.

For mere info, her er 3 måder at få sproget for den aktuelle session i SQL Server (T-SQL).

Se også Sådan indstilles det aktuelle sprog i SQL Server (T-SQL).


  1. SQL Server:Nyttige tips til nybegyndere

  2. Hvordan ejendomsmæglere kan bruge Microsoft Access

  3. Sagen om kardinalitetsvurderingen Red Sild

  4. Sådan fungerer SUBSTRING_INDEX() i MariaDB