Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

3 Cara Mendapatkan Nama Hari dari Tanggal di SQL Server (T-SQL)

Di SQL Server, sama seperti Anda dapat menggunakan T-SQL untuk mendapatkan nama bulan dari tanggal, Anda juga dapat menggunakan metode yang sama untuk mendapatkan nama hari. Dengan nama hari, maksud saya Senin atau Selasa misalnya, dan bukan nomor tanggal atau nomor hari dalam seminggu (yang juga bisa Anda dapatkan jika Anda membutuhkannya).

Berikut adalah tiga cara untuk mengembalikan nama hari dari tanggal di SQL Server menggunakan T-SQL.

Fungsi FORMAT()

FORMAT() fungsi mengembalikan nilai yang diformat dalam format yang ditentukan dan budaya opsional. Anda dapat menggunakannya untuk mengembalikan nama hari dari tanggal.

Ini contohnya:

DECLARE @date datetime2 = '2018-07-01';
SELECT FORMAT(@date, 'dddd') AS Result;

Hasil:

+----------+
| Result   |
|----------|
| Sunday   |
+----------+

Dalam hal ini kami menyediakan format dddd yang untuk nama hari.

Anda juga bisa mendapatkan nama hari pendek dengan memberikan ddd sebagai argumen kedua:

DECLARE @date datetime2 = '2018-07-01';
SELECT FORMAT(@date, 'ddd') AS Result;

Hasil:

+----------+
| Result   |
|----------|
| Sunday   |
+----------+

Anda juga dapat memberikan argumen opsional untuk menentukan budaya.

Berikut beberapa contohnya:

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';

Hasil:

+---------+---------+---------+---------+
| en-US   | es-es   | de-de   | zh-cn   |
|---------+---------+---------+---------|
| Sunday  | domingo | Sonntag | 星期日  |
+---------+---------+---------+---------+

Fungsi DATENAME()

DATENAME() fungsinya mirip dengan DATEPART() fungsi, kecuali mengembalikan nama dari bagian tanggal yang ditentukan (tetapi hanya jika nama berlaku). Itu berarti ia mengembalikan nama hari minggu atau nama bulan jika itu yang Anda butuhkan.

Berikut cara mengembalikan komponen hari minggu dari tanggal:

DECLARE @date datetime2 = '2018-07-01';
SELECT DATENAME(weekday, @date) AS Result;

Hasil:

+----------+
| Result   |
|----------|
| Sunday   |
+----------+

Fungsi Skalar DAYNAME() ODBC

Jika karena alasan tertentu Anda perlu menggunakan fungsi skalar ODBC, ada satu yang disebut DAYNAME() yang secara khusus mengembalikan nama hari minggu dari tanggal.

Contoh:

DECLARE @date datetime2 = '2018-07-01';
SELECT {fn DAYNAME(@date)} AS Result;

Hasil:

+----------+
| Result   |
|----------|
| Sunday   |
+----------+

Saat menggunakan fungsi skalar ODBC di T-SQL, fungsi tersebut dikelilingi oleh kurung kurawal ({} ) dan nama fungsi diawali dengan fn .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Perbedaan Antara Tabel DELETE dan TRUNCATE di SQL Server

  2. Pengoptimalan kinerja XML Server XML

  3. Bisakah saya mendapatkan nama semua tabel database SQL Server di aplikasi C#?

  4. Buat Database SQL Server dengan Azure Data Studio

  5. SQL Dinamis (melewati nama tabel sebagai parameter)