V SQL Server, stejně jako můžete použít T-SQL k získání názvu měsíce z data, můžete také použít stejné metody k získání názvu dne. Název dne myslím pondělí nebo úterý například a ne číslo data nebo číslo dne v týdnu (které můžete také získat, pokud je potřebujete).
Zde jsou tři způsoby, jak vrátit název dne z data v SQL Server pomocí T-SQL.
Funkce FORMAT()
FORMAT()
funkce vrací hodnotu naformátovanou v zadaném formátu a volitelné jazykové verzi. Můžete jej použít k vrácení názvu dne z data.
Zde je příklad:
DECLARE @date datetime2 = '2018-07-01'; SELECT FORMAT(@date, 'dddd') AS Result;
Výsledek:
+----------+ | Result | |----------| | Sunday | +----------+
V tomto případě jsme poskytli formát dddd
což je název dne.
Můžete také získat název krátkého dne zadáním ddd
jako druhý argument:
DECLARE @date datetime2 = '2018-07-01'; SELECT FORMAT(@date, 'ddd') AS Result;
Výsledek:
+----------+ | Result | |----------| | Sun | +----------+
Můžete také zadat volitelný argument pro specifikaci kultury.
Zde je několik příkladů:
DECLARE @date datetime2 = '2018-07-01'; SELECT FORMAT(@date, 'dddd', 'en-US') AS 'en-US', FORMAT(@date, 'dddd', 'es-es') AS 'es-es', FORMAT(@date, 'dddd', 'de-de') AS 'de-de', FORMAT(@date, 'dddd', 'zh-cn') AS 'zh-cn';
Výsledek:
+---------+---------+---------+---------+ | en-US | es-es | de-de | zh-cn | |---------+---------+---------+---------| | Sunday | domingo | Sonntag | 星期日 | +---------+---------+---------+---------+
Funkce DATENAME()
DATENAME()
funkce je podobná funkci DATEPART()
funkce, kromě toho, že vrací jméno zadané části data (ale pouze tam, kde je použitelný název). To znamená, že vrátí název dne v týdnu nebo název měsíce, pokud to požadujete.
Zde je návod, jak vrátit část data dne v týdnu:
DECLARE @date datetime2 = '2018-07-01'; SELECT DATENAME(weekday, @date) AS Result;
Výsledek:
+----------+ | Result | |----------| | Sunday | +----------+
Skalární funkce ODBC DAYNAME()
Pokud z nějakého důvodu potřebujete použít skalární funkci ODBC, existuje jedna s názvem DAYNAME()
který konkrétně vrací název dne v týdnu z data.
Příklad:
DECLARE @date datetime2 = '2018-07-01'; SELECT {fn DAYNAME(@date)} AS Result;
Výsledek:
+----------+ | Result | |----------| | Sunday | +----------+
Při použití skalárních funkcí ODBC v T-SQL jsou ohraničeny složenými závorkami ({}
) a název funkce má předponu fn
.