Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да се покаже дата в британски формат в SQL Server (T-SQL)

Тази статия демонстрира как изрично да форматирате дата във Великобритания английски формат, когато използвате T-SQL FORMAT() функция в SQL Server.

Може или може да не се наложи да използвате този аргумент, в зависимост от езика на вашата локална сесия. Въпреки това, ето как изрично да посочите формат за дата във Великобритания.

Пример 1 – Кратък британски формат за дата

За да посочите изрично, че дадена дата трябва да се показва в английски формат на Великобритания, използвайте en-gb като аргумент за култура:

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

Резултат:

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

В този случай използвах малка буква d като втори аргумент. Това води до сравнително кратък формат на датата, като денят и месецът се показват като числа.

И тъй като използваме британския английски формат, денят идва преди месеца (това е за разлика от формата за дата в САЩ, където месецът идва преди деня).

Пример 2 – Дълъг британски формат на дата

Можете да промените втория аргумент на D с главни букви за да се получи по-дълъг формат на датата, като месецът е изписан:

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

Резултат:

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

Пример 3 – Персонализиран британски формат на дата

Можете също да използвате персонализиран формат за дата, ако е необходимо. Това ви позволява изрично да посочите точно как и къде отива всеки компонент за дата.

Пример:

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

Резултат:

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

Все още уточнявам култура, въпреки че уточнявам точно къде отива всеки компонент за дата. Причината да правя това е да посоча изрично кой език да използвам. Пропускането на този аргумент може или не може да причини проблеми, в зависимост от използваните езици.

Проверка на текущата ви сесия

Когато използвате FORMAT() функция, ако аргументът култура не е предоставен, се използва езикът на текущата сесия. Този език се задава или имплицитно, или изрично с помощта на SET LANGUAGE изявление.

За повече информация, ето 3 начина да получите езика на текущата сесия в SQL Server (T-SQL).

Вижте също Как да зададете текущия език в SQL Server (T-SQL).


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Driver.getConnection виси с помощта на драйвер на SQLServer и Java 1.6.0_29

  2. SQL Server BIT Datatype – Крайно ръководство

  3. Вземете граничните стойности за разделена таблица в SQL Server (T-SQL)

  4. SQL Server ПОРЪЧАЙ ПО дата и нулевите последни

  5. Как изброявате първичния ключ на таблица на SQL Server?