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 .