Định dạng Ngày của Máy chủ SQL với Hàm FORMAT – lấy định dạng ngày trong sql

Trong mẹo này, chúng tôi xem xét cách sử dụng hàm FORMAT để định dạng ngày, giờ và số trong SQL Server cùng với một số ví dụ.

Bạn đang xem : lấy định dạng ngày trong sql

Bởi: | Cập nhật: 2021-10-13 | Nhận xét (15) | Liên quan: 1 | 2 | 3 | 4 | 5 | Thêm & gt; Ngày

Vấn đề

Microsoft SQL Server 2008 và các phiên bản trước đó đã sử dụng

CONVERT
có chức năng xử lý định dạng ngày tháng trong các truy vấn SQL,
câu lệnh CHỌN ,

các thủ tục được lưu trữ

Tập lệnh T-SQL . Trong
mẹo này,

Chuyển đổi Ngày và Giờ Sử dụng SQL Server
, chúng tôi có một danh sách
ví dụ về cách sử dụng hàm CONVERT để xử lý các định dạng ngày tháng khác nhau trong
cơ sở dữ liệu SQL.

Như bạn có thể biết, chức năng CHUYỂN ĐỔI không linh hoạt lắm và chúng tôi đã hạn chế
các định dạng ngày tháng. Trong Microsoft SQL Server 2012 trở lên, hàm

FORMAT
đã được giới thiệu, dễ sử dụng hơn nhiều để định dạng ngày tháng.
Hướng dẫn này trình bày các ví dụ khác nhau về việc sử dụng chức năng mới này để định dạng ngày tháng.

Giải pháp

Bắt đầu với SQL Server 2012, một hàm để xử lý định dạng ngày tháng đã được giới thiệu
tương tự như hàm to_date của Oracle. Nhiều DBA Oracle đã phàn nàn về
chức năng CHUYỂN ĐỔI của SQL Server và tính linh hoạt kém của nó và bây giờ chúng tôi có một cách mới
để định dạng ngày tháng trong SQL Server.

Với Máy chủ SQL

Chức năng FORMAT
mà chúng tôi không cần biết

số định dạng
để sử dụng để có được định dạng ngày phù hợp mà chúng tôi muốn, chúng tôi chỉ có thể chỉ định
định dạng hiển thị mà chúng tôi muốn và chúng tôi có được định dạng đó.

Định dạng ngày trong SQL với hàm FORMAT

  1. Sử dụng hàm FORMAT để định dạng các loại dữ liệu ngày và giờ từ một ngày
    cột (dữ liệu ngày, datetime, datetime2, smalldatetime, datetimeoffset, v.v.
    gõ) trong một bảng hoặc một biến chẳng hạn như
    GETDATE ()
  2. Để nhận DD / MM / YYYY, hãy sử dụng CHỌN ĐỊNH DẠNG (getdate (), ‘dd / MM / yyyy’) như ngày tháng
  3. Để nhận MM-DD-YY, hãy sử dụng CHỌN ĐỊNH DẠNG (getdate (), ‘MM-dd-yy’) làm ngày tháng
  4. Xem thêm các ví dụ bên dưới

Cú pháp của hàm FORMAT trong SQL Server như sau:

 ĐỊNH DẠNG (giá trị, định dạng [, văn hóa])
ĐI 

Ví dụ về ĐỊNH DẠNG Máy chủ SQL để Định dạng Ngày

Hãy bắt đầu với một ví dụ:

 CHỌN ĐỊNH DẠNG (getdate (), 'dd-MM-yy') làm ngày
ĐI 

Định dạng sẽ như sau:

  • dd – số ngày từ 01-31
  • MM – số tháng từ 01-12
  • yy – số năm có hai chữ số

Nếu quá trình này được chạy vào ngày 21 tháng 3 năm 2021, đầu ra sẽ là: 21-03-21 .

Xem Thêm  Hệ thống lưới điện - 12 cột lưới bootstrap

Hãy thử một cái khác:

 CHỌN ĐỊNH DẠNG (getdate (), 'hh: mm: ss') theo thời gian
ĐI 

Định dạng sẽ như sau:

  • hh – giờ trong ngày từ 01-12
  • mm – phút trong giờ từ 00-59
  • ss – giây trên phút từ 00-59

Đầu ra sẽ là: 02:48:42 .

Ví dụ về đầu ra Định dạng Ngày của Máy chủ SQL

Dưới đây là danh sách các định dạng ngày và giờ với ví dụ về kết quả đầu ra.
Ngày hiện tại được sử dụng cho tất cả các ví dụ này là “2021-03-21 11: 36: 14.840”.

Truy vấn
Đầu ra mẫu

CHỌN ĐỊNH DẠNG (getdate (), ‘dd / MM / yyyy’) làm ngày
21/03/2021

CHỌN ĐỊNH DẠNG (getdate (), ‘dd / MM / yyyy, hh: mm: ss’) làm ngày
21/03/2021, 11:36:14

CHỌN ĐỊNH DẠNG (getdate (), ‘dddd, MMMM, yyyy’) làm ngày
Thứ tư, tháng ba năm 2021

CHỌN ĐỊNH DẠNG (getdate (), ‘MMM dd yyyy’) làm ngày
Ngày 21 tháng 3 năm 2021

CHỌN ĐỊNH DẠNG (getdate (), ‘MM.dd.yy’) làm ngày
03.21.21

CHỌN ĐỊNH DẠNG (getdate (), ‘MM-dd-yy’) làm ngày
03-21-21

CHỌN ĐỊNH DẠNG (getdate (), ‘hh: mm: ss tt’) làm ngày
11:36:14 sáng

CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘us’) làm ngày
21/03/2021

CHỌN ĐỊNH DẠNG (getdate (), ‘yyyy-MM-dd hh: mm: ss tt’) làm ngày
2021-03-21 11:36:14 SA

CHỌN ĐỊNH DẠNG (getdate (), ‘yyyy.MM.dd hh: mm: ss t’) làm ngày
2021.03.21 11:36:14 A

CHỌN ĐỊNH DẠNG (getdate (), ‘dddd, MMMM, yyyy’, ‘es-es’) làm ngày – Tiếng Tây Ban Nha
domingo, marzo, 2021

CHỌN ĐỊNH DẠNG (getdate (), ‘dddd dd, MMMM, yyyy’, ‘ja-jp’) làm ngày
–Tiếng Nhật
日 曜 日 21, 3 月, 2021

Như bạn có thể thấy, chúng tôi đã sử dụng rất nhiều tùy chọn để định dạng ngày và giờ,
được liệt kê bên dưới.

  • dd – đây là ngày trong tháng từ 01-31
  • dddd – đây là ngày chính tả
  • MM – đây là số tháng từ 01-12
  • MMM – tên viết tắt của tháng
  • MMMM – đây là tháng chính tả
  • yy – đây là năm có hai chữ số
  • yyyy – đây là năm có bốn chữ số
  • hh – đây là giờ từ 01-12
  • HH – đây là giờ từ 00-23
  • mm – đây là phút từ 00-59
  • ss – đây là lần thứ hai từ 00-59
  • tt – phần này hiển thị SA hoặc CH
  • d – đây là ngày trong tháng từ 1-31 (nếu điều này được sử dụng riêng, nó sẽ hiển thị
    cả ngày)
  • chúng tôi – phần này hiển thị ngày sử dụng văn hóa Hoa Kỳ là MM / DD / YYYY

Đối với tất cả các chuỗi định dạng ngày và giờ tùy chỉnh khác nhau để sử dụng với SQL
Lệnh FORMAT của máy chủ,

xem danh sách này.

Định dạng ngày máy chủ SQL với văn hóa

Một tùy chọn khác cho hàm FORMAT là văn hóa . Với
tùy chọn văn hóa bạn có thể có được định dạng khu vực. Đây là

danh sách các mã văn hóa để sử dụng với FORMAT
.

Xem Thêm  Hàm in_array () trong PHP - hàm php trong mảng

Ví dụ: ở Hoa Kỳ, định dạng sẽ như sau:

 CHỌN ĐỊNH DẠNG (getdate (), 'd', 'en-us') làm ngày
ĐI 

Ở Hoa Kỳ, định dạng là tháng, ngày, năm.

Nếu quá trình này được chạy vào ngày 21 tháng 3 năm 2018, đầu ra sẽ là: 21 tháng 3 năm 2018

Một ví dụ khác mà chúng tôi sẽ sử dụng văn hóa Tây Ban Nha ở Bolivia (es-bo):

 CHỌN ĐỊNH DẠNG (getdate (), 'd', 'es-bo') làm ngày
ĐI 

Ở Bolivia, định dạng là ngày, tháng, năm.

Nếu quá trình này được chạy vào ngày 21 tháng 3 năm 2021, đầu ra sẽ là: 21 tháng 3 năm 2021.

Bảng sau đây chứa các ví dụ khác nhau cho các nền văn hóa khác nhau cho tháng 10
11, 2021:

Văn hóa
Truy vấn
Đầu ra mẫu

Anh-Mỹ
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘en-US’) làm ngày
10/11/2021

Tiếng Pháp nước Pháp
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘fr-FR’) làm ngày
11/10/2021

Tiếng Armenia-Armenia
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘hy-AM’) làm ngày
11.10.2021

Tiếng Latinh Bosnia
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘bs-Latn-BA’) làm ngày
11. 10. Năm 2021.

Tiếng Trung giản thể
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘zh-CN’) làm ngày
2021/10/11

Đan Mạch – Đan Mạch
CHỌN ĐỊNH DẠNG (getdate (), ‘MM.dd.yy’) làm ngày
11-10-2021

Dari – Afghanistan
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘prs-AF’) làm ngày
1400/7/19

Divehi – Maldives
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘dv-MV’) làm ngày
11/10/21

Pháp – Bỉ
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘fr-BE’) làm ngày
11-10-21

Tiếng Pháp – Canada
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘fr-CA’) làm ngày
2021-10-11

Hungary – Hungary
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘hu-HU’) làm ngày
Năm 2021. 10. 11.

isiXhosa / Xhosa – Nam Phi
CHỌN ĐỊNH DẠNG (getdate (), ‘d’, ‘xh-ZA’) làm ngày
2021-10-11

Để có danh sách đầy đủ các ngôn ngữ có thể sử dụng, hãy tham khảo liên kết sau:

Ví dụ về số định dạng SQL

Định dạng này cũng cho phép định dạng số theo văn hóa. Sau
bảng sẽ hiển thị các ví dụ khác nhau.

Định dạng
Truy vấn
Đầu ra mẫu

Tiền tệ-Anh-Mỹ
CHỌN ĐỊNH DẠNG (200.36, ‘C’, ‘en-us’) NHƯ ‘Định dạng tiền tệ’
$ 200,36

Tiền tệ-Đức
CHỌN ĐỊNH DẠNG (200,36, ‘C’, ‘de-DE’) LÀM ‘Định dạng tiền tệ’
200,36 €

Tiền tệ-Nhật Bản
CHỌN ĐỊNH DẠNG (200,36, ‘C’, ‘ja-JP’) NHƯ ‘Định dạng tiền tệ’
¥ 200

Định dạng chung
CHỌN ĐỊNH DẠNG (200.3625, ‘G’, ‘en-us’) NHƯ ‘Định dạng’
200,3625

Định dạng số
CHỌN ĐỊNH DẠNG (200.3625, ‘N’, ‘en-us’) NHƯ ‘Định dạng’
200,36

Số 3 số thập phân
CHỌN ĐỊNH DẠNG (11.0, ‘N3’, ‘EN-US’) NHƯ ‘Định dạng’
11.000

Số thập phân
CHỌN ĐỊNH DẠNG (12, ‘D’, ‘en-us’) NHƯ ‘Định dạng’
12

Số thập phân 4
CHỌN ĐỊNH DẠNG (12, ‘D4’, ‘en-us’) NHƯ ‘Định dạng’
0012

Xem Thêm  Khai báo ENTITY - làm thế nào để bạn xác định một thực thể mới trong xml

số mũ
CHỌN ĐỊNH DẠNG (120, ‘E’, ‘EN-US’) LÀM ‘Định dạng’
1.200000E + 002

Phần trăm
CHỌN ĐỊNH DẠNG (0,25, ‘P’, ‘EN-US’) LÀM ‘Định dạng’
25,00%

Hệ thập lục phân
CHỌN ĐỊNH DẠNG (11, ‘X’, ‘EN-US’) LÀM ‘Định dạng’
B

Kết luận

Trong bài viết này, chúng tôi đã xem các ví dụ khác nhau để thay đổi
xuất cho các định dạng khác nhau trong cơ sở dữ liệu MS SQL.

Lưu ý: Hàm FORMAT sử dụng Common
Language Runtime (CLR) và đã có những khác biệt về hiệu suất đáng chú ý
giữa các phương pháp tiếp cận khác (Hàm CHUYỂN ĐỔI, Hàm CAST, v.v.) cho thấy rằng
FORMAT chậm hơn nhiều.

Các bước tiếp theo

Giới thiệu về tác giả

Xem tất cả các mẹo của tôi
Daniel Calbimonte là MVP của Microsoft SQL Server, Giảng viên được chứng nhận của Microsoft và Chuyên gia CNTT được chứng nhận của Microsoft.

Bài viết cập nhật lần cuối: 2021-10-13


Xem thêm những thông tin liên quan đến chủ đề lấy định dạng ngày trong sql

Lab 3.B4: Sử dụng hàm xử lý ngày tháng năm (Datename, Datediff, getdate) trong SQL Server

  • Tác giả: Anh Nguyen Ngoc
  • Ngày đăng: 2020-06-03
  • Đánh giá: 4 ⭐ ( 4515 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Quản trị Cơ sở dữ liệu SQL Server playlist: https://www.youtube.com/playlist?list=PLn9lhDYvf_3Gdiz6uY9HAztCKapCvzTPe

    Nhóm thảo luận: https://www.facebook.com/groups/115838366528104

Các hàm ngày tháng trong SQL

  • Tác giả: freehost.page
  • Đánh giá: 4 ⭐ ( 6337 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Hàm xử lý date time trong Mysql

  • Tác giả: nongdanit.info
  • Đánh giá: 5 ⭐ ( 8705 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Kiểu dữ liệu DATE trong SQL Server

  • Tác giả: comdy.vn
  • Đánh giá: 5 ⭐ ( 7072 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

[Tự học SQL] Làm việc với kiểu ngày, giờ(Date) trong SQL

  • Tác giả: cafedev.vn
  • Đánh giá: 4 ⭐ ( 7941 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Các dữ liệu khác có thể đơn giản, nhưng đối với kiểu ngày, giờ sẽ có nhiều khó khăn cho người mới dùng nó. Vì vậy cafedev chia sẻ cho ace một số kiến thức và kinh nghiệm khi làm việc với kiểu này.

[SQLSERVER] Hướng dẫn chuyển đổi định dạng kiểu Date Time

  • Tác giả: laptrinhvb.net
  • Đánh giá: 4 ⭐ ( 2838 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong bài viết hôm nay, mình sẽ giới thiệu đến các bạn hàm

Hàm xử lý Date và Time trong MySQL

  • Tác giả: hoclaptrinh.vn
  • Đánh giá: 5 ⭐ ( 7625 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bảng dưới liệt kê tất cả các hàm quan trọng liên quan tới xử lý Date và Time trong MySQL. Có các hàm đa dạng khác nhau được hỗ trợ bởi RDBMS của bạn. Danh sách dưới đây dựa trên MySQL RDBMS.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình