sql >> Databáze >  >> RDS >> Sqlserver

Jak zobrazit datum ve formátu data v USA na serveru SQL (T-SQL)

V SQL Server můžete použít T-SQL FORMAT() funkce pro zobrazení data v požadovaném formátu. Tato funkce přijímá volitelný argument „kultura“, který můžete použít k určení formátu data v USA.

Tento argument můžete nebo nemusíte použít v závislosti na jazyku vaší místní relace. Zde je však postup, jak explicitně určit formát data v USA.

Příklad 1 – Krátký formát data v USA

Chcete-li explicitně určit, že datum má být zobrazeno ve formátu americké angličtiny, použijte en-US jako argument kultury:

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

Výsledek:

+-----------+
| Result    |
|-----------|
| 12/1/2020 |
+-----------+

V tomto případě jsem použil malé d jako druhý argument. Výsledkem je relativně krátký formát data, kdy se den a měsíc zobrazují jako čísla.

A protože používáme formát data v USA, měsíc předchází dne.

Příklad 2 – dlouhý americký formát data

Pokud jej změním na velké D , získám delší formát s vyznačeným dnem a měsícem:

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

Výsledek:

+---------------------------+
| Result                    |
|---------------------------|
| Tuesday, December 1, 2020 |
+---------------------------+

Příklad 3 – Vlastní formát data v USA

Pokud zjistíte, že výše uvedené formáty data jsou příliš omezující, můžete vždy zadat vlastní formát data. Pokud se vám například líbí předchozí příklad, ale chcete mít pouze první 3 písmena dne a měsíce, můžete udělat toto:

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

Výsledek:

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

Stále určuji kulturu, i když přesně specifikuji, kam se každá komponenta data dostane. Důvod, proč to dělám, je výslovně uvést, který jazyk použít. Vynechání tohoto argumentu může nebo nemusí způsobit problémy v závislosti na používaných jazycích.

Dobrá věc na vlastních formátech data je, že vám poskytují velkou flexibilitu. Komponenty můžete přepínat a objeví se přesně tam, kde je chcete.

Kontrola aktuální relace

Při použití FORMAT() Pokud není zadán argument kultury, použije se jazyk aktuální relace. Tento jazyk se nastavuje buď implicitně, nebo explicitně pomocí SET LANGUAGE prohlášení.

Další informace naleznete zde 3 způsoby, jak získat jazyk aktuální relace na serveru SQL Server (T-SQL).

Viz také Jak nastavit aktuální jazyk v SQL Server (T-SQL).


  1. Odstraňte primární klíč v MySQL

  2. Přihlaste výstup DBMS_OUTPUT.Put_Line do tabulky v Oracle pomocí DBMS_OUTPUT.Get_Lines

  3. Jak mohou automatické aktualizace statistik ovlivnit výkon dotazů

  4. Funkce s SQL dotazem nemá žádný cíl pro výsledná data