Các Hàm Làm Việc Với Kiểu Dữ Liệu Ngày Tháng/ Thời Gian Trong SQL
Để công việc của chúng ta thuận tiện hơn, tôi và các bạn hãy cùng nhau tìm hiểu các hàm làm việc với kiểu dữ liệu Ngày tháng/ Thời gian trong SQL.
1 Hàm GETDATE
Hàm GETDATE trả về ngày giờ lúc thực hiện câu truy vấn.
Ví dụ:
select getdate()2 Hàm DAY/ MONTH/ YEAR
Hàm DAY trả về ngày của một một giá trị thuộc kiểu datetime.
Hàm MONTH trả về tháng của một giá trị thuộc kiểu datetime
Hàm YEAR trả về năm của một giá trị thuộc kiểu datetime.
Ví dụ:
select day(orderdate) as DAYOFORDER, month(orderdate) as MONTHOFORDER, year(orderdate) as YEAROFORDER from orders o inner join customers c on c.cus tomerid = o.customerid where c.customerid = 33 Hàm DATEPART
Trong quá trình làm việc với các CSDL, đôi lúc ta muốn biết xem một ng ày nào đó thuộc quý mấy trong năm, hay thuộc tuần thứ mấy trong tháng . Hàm DATEPART giúp giải quyết các yêu cầu trên một cách dễ dàng.
Cấu trúc hàm DATEPART như sau:
DATEPART (yêu_cầu_trích_xuất, giá_trị_trích_xuất) giá_trị_trích_xuất là một giá trị thuộc kiểu datetime. yêu_cầu_trích_xuất: ngày, tháng, năm, quý,….
Khi có một yêu cầu trích xuất nào đó, chúng ta sẽ có các chữ viết tắt tương ứng với các yêu cầu đó. Bảng dưới đây mô tả các yêu chữ viết tắt và các yêu cầu trích xuất tương ứng.
Ý ngh ĩa | Ch ữ viết tắt |
Năm | yy, yyyy |
Quý | qq,q |
Tháng | mm,m |
Số ngày đã qua trong n ăm | dy,y |
Ngày | dd,d |
Tu ần | wk,ww |
Số ngày đã qua trong tu ần | dw |
Gi ờ | hh |
Phút | mi,n |
Giây | ss,s |
Ví dụ:
select datepart(yyyy, orderdate)as YEAROFORDERDATE, datepart(qq, orderdate)as QUARTEROFORDERDATE, datepart(m, orderdate) as MONTHOFORDERDATE, datepart(wk, orderdate) as WEEKOFORDERDATE, datepart(d, orderdate) as DATEOFORDERDATE, datepart(dy, Orderdate), datepart(dw, orderdate) from orders4 Hàm DATENAME
Tương tự hàm DATEPART nhưng hàm DATENAME tr ả về một chuỗi ký tự
Ví dụ:
select datename(yyyy, orderdate)as YEAROFORDERDATE, datename(qq, orderdate)as QUARTEROFORDER DATE, datename(m, orderdate) as MONTHOFORDERDATE, datename(wk, orderdate) as WEEKOFORDERDATE, datename(d, orderdate) as DATEOFORDERDATE, datename(dy, Orderdate), datename(dw, orderdate) from orders5. Hàm CAST và CONVERTER
Chuyển đổi một giá trị thuộc kiểu dữ liệu này sang một kiểu dữ liệu khác. Hàm CAST và CONVERTER cung cấp cùng một chức năng. Một điểm thuận lợi khi dùng CONVERTER là khi chuyển đổi, hàm này cũng cho phép người dùng sẽ định dạng lại giá tri kết quả theo ý muốn.
Cấu trúc hàm CAST và CONVERTER như sau:
CAST (biểu_thức/giá_ trị AS kiểu_dữ liệu [độ_dài_kiểu_dữ_liệu ]) CONVERT ( kiểu_dữ liệu [độ_dài_kiểu_dữ_liệu ] , biểu_thức/giá_ trị [ ,kiểu_định_dạng] ) Năm 2 chữ số | Năm 4 chữ số | Output |
| 0 ho ặc 100 | mon dd yyyy hh:mi AM (PM) |
1 | 101 | mm/dd/yy |
2 | 102 | yy.mm.dd |
3 | 103 | dd/mm/yy |
4 | 104 | dd.mm.yy |
5 | 105 | dd-mm-yy |
6 | 106 | dd mon yy |
7 | 107 | Mon dd, yy |
8 | 108 | hh:mm:ss |
| 9 ho ặc 109 | mon dd yyyy hh:mi:ss:mmmAM (PM) |
10 | 110 | mm-dd-yy |
11 | 111 | yy/mm/dd |
12 | 112 | yymmdd |
| 13 ho ặc 113 | dd mon yyyy hh:mm:ss:mmm(24h) |
14 | 114 | hh:mi:ss:mmm(24h) |
Ví dụ:
select CUSTOMERNAME, convert (varchar, BIRTHDAY, 103) as BIRTHDAY, ADDRESS from Customers where Customername = 'Le Thi Hoa' and year(getdate()) - year(BIRTHDAY) > 20Hàm CONVERT và hàm CAST có thể sử dụng kết hợp với nhau để cho kết qua như mong muốn.
Ví dụ:
select c.CUSTOMERID, c.CUSTOMERNAME, convert(varchar(20),cast(SUM(i.UNITPRICE*od.QUANTITY) as money),1) as SUMTOTAL from customers c inner join orders o on o.customerid = c.customerid inner join orderdetail od on o.orderid = od.orderid inner join items i on i.itemid = od.itemid group by c.customerid, c.customername Tags: Sql 2005sql server 2005giáo trình sql servergiáo trình sql servertự học sql 2005tự học sql 2005tìm hiểu sql serversql servercác hàm làm việc với kiểu dữ liệu Ngày tháng/ Thời gian trong SQL.Từ khóa » Dữ Liệu Giờ Trong Sql
-
Hàm Xử Lý DATE/TIME Trong SQL - Phần 1
-
Kiểu Dữ Liệu TIME Trong SQL Server
-
[Tự Học SQL] Làm Việc Với Kiểu Ngày, Giờ(Date) Trong SQL - Cafedev
-
Hàm TIME() Trong SQL - Học Sql Cơ Bản đến Nâng Cao - VietTuts
-
Xử Lý Date Trong SQL - Học Sql Cơ Bản đến Nâng Cao - VietTuts
-
Tất Tần Tật Về Xử Lý Ngày Tháng (DATE/TIME) Trong SQL
-
Sử Dụng Kiểu Dữ Liệu Mở Rộng Ngày/Giờ - Microsoft Support
-
Kiểu Dữ Liệu Datetime Trong Sql, Dữ Liệu Và Cấu Trúc Trong Mysql
-
Các Kiểu Dữ Liệu Trong SQL Server : Cập Nhật Cực Đầy Đủ Và Chi ...
-
Hàm Lấy Giờ Trong Sql Server - Stockonmobile
-
[NEW] Hàm Xử Lý Date Và Time Trong SQL | Lấy Giờ Trong Sql - Pickpeup
-
So Sánh Thời Gian Trong Sql
-
Hàm Xử Lý DATE/TIME Trong SQL - Phần 2
-
Tính Toán Và Xử Lý Ngày Tháng Bằng Câu Lệnh SQL Như Thế Nào?