Hàm lấy giờ trong sql server

      46

Kiểu tài liệu tháng ngày (date/time) rất khác đa số hình dáng dữ liệu ngulặng thuỷ thường thì cần hay tạo khó khăn cho các bạn lập trình sẵn viên nhất là lúc thao tác cùng với những câu lệnh mysql, vào nội dung bài viết này bản thân đã tổng thích hợp với giải đáp chúng ta thao tác làm việc cùng với đẳng cấp date/time vào mysql


*

1. Kiểu dữ liệu ngày SQL.

Bạn đang xem: Hàm lấy giờ trong sql server

Bạn đã xem: Hàm đem giờ trong sql server

MySQL gồm các loại tài liệu sau cho 1 ngày hoặc quý giá ngày / thời gian trong cửa hàng dữ liệu:

Date - format YYYY-MM-DDDATETIME - format: YYYY-MM-DD HH:MI:SSTIMESTAMP - format: YYYY-MM-DD HH:MI:SSYEAR - format YYYY hoặc YY

Sql server tất cả các một số loại dữ liệu sau cho 1 ngày hoặc giá trị ngày / thời hạn vào cửa hàng dữ liệu:

DATE - format YYYY-MM-DDDATETIME - format: YYYY-MM-DD HH:MI:SSSMALLDATETIME - format: YYYY-MM-DD HH:MI:SSTIMESTAMP - format: 1 số duy nhất

2. Các funtion thường xuyên thực hiện.

TênChức năng
DATE()Trả về ngày tự biểu thức datetime
CURDATE()Trả về ngày bây giờ của sản phẩm tính
YEAR()Trả về năm của ngày đang chỉ định
MONTH()Trả về tháng của ngày đã chỉ định
DAY()Trả về ngày của ngày được chỉ định
TIME()Trả về tiếng của ngày được chỉ định
DATE()Trả về ngày từ bỏ biểu thức datetime
DATE_ADD()Trả về ngày trường đoản cú biểu thức datetime
DATEDIFF()Trả về ngày trường đoản cú biểu thức datetime
DATE_SUB()Trả về ngày tự biểu thức datetime
NOW()Trả về thời gian hiện tại tại
DAYOFWEEK()Trả về ngày của tuần
DAYNAME()Trả về thương hiệu ngày
MONTHNAME()Trả về tên tháng
STR_TO_DATE()Format chuỗi về ngày

....... Dường như còn không hề ít hàm khác dẫu vậy bản thân xin phép trình bày một vài hàm mà họ hay được dùng như bên trên.

3. Tính toán

3.1 Còn bao nhiêu ngày nữa ?

Câu hỏi này chắc chắn là chạy qua đầu của họ ít nhất là mặt hàng tuần còn nếu như không nói là mặt hàng ngày

MySQL giải quyết và xử lý nhiều loại câu hỏi này với hàm DATEDIFF()

DATEDIFF() trừ nhì quý giá ngày với trả về số ngày thân chúng.

SELECT DATEDIFF(CURDATE(), birthday) AS days_difference FROM friends LIMIT 5;với kết quả là phía trên :

*

sau thời điểm mang được số ngày, bạn muốn xem bạn đó trong năm này từng nào tuổi chúng ta chỉ việc chia mang đến 365 ngày là ra hiệu quả số tuổi.

SELECT ROUND(DATEDIFF(CURDATE(), birthday) / 365, 0) AS years FROM friends LIMIT 5;

*

Hàm ROUND()tân oán học tập được sử dụng để làm tròn hiệu quả thành một vài nguyên ổn.

quý khách hàng cũng rất có thể tính tân oán tuổi của friends bằng phương pháp sau

SELECT first_name, last_name, (YEAR(CURDATE()) - YEAR(birthday)) - (RIGHT(CURDATE(), 5) Giải ưng ý 1 chút ít :

Hàm CURDATE () trả về ngày ngày nay của máy tính, hàm YEAR () trả về năm của ngày vẫn chỉ định, hàm MONTH () trả về tháng của ngày đang hướng đẫn, hàm DAY () trả về ngày của ngày được hướng đẫn Hàm RIGHT () trả về con số cam kết từ như được hướng đẫn trong hàm trường đoản cú chuỗi hoặc ngày đang đến. Phần của biểu thức so sánh các trả về tự hàm RIGHT () ước tính 1 hoặc 0. hiệu quả là :


*

Sau khi select được số tuổi của những friend trong khoa vào menu friend của chính bản thân mình bạn muốn sắp xếp số tuổi theo trang bị từ bỏ bớt dần dần hoặc tăng vọt thì bọn họ chỉ cần

ORDER BY age ASC; //bố trí tăng dầnORDER BY age DESC; // bố trí sút dần vào thời gian cuối mệnh đề bên trên.

3.2 Chúng ta không lúc nào quên sinch nhật yêu cầu không?

Giả sử họ mong mỏi biết ngày vào tuần là sinch nhật của một fan chúng ta. Có lẽ chúng tôi quan sát vào friends bàn mỗi tuần cùng hiểu rằng ai đã sinh nhật, giả dụ tất cả, với ghi chụ ngày hôm nay là ngày gì.

Các DAYOFWEEK()hàm trả về một giá trị số mang lại tyêu thích số cực hiếm ngày tháng. Những số lượng đó thay mặt cho:

1 = Chủ nhật,

2 = Thứ nhì, v.v.

Xem thêm: Malwarebytes 4 - Malwarebytes Anti

SELECT first_name, last_name, birthday, CASE WHEN DAYOFWEEK(birthday) = "1" THEN "Sunday" WHEN DAYOFWEEK(birthday) = "2" THEN "Monday" WHEN DAYOFWEEK(birthday) = "3" THEN "Tuesday" WHEN DAYOFWEEK(birthday) = "4" THEN "Wednesday" WHEN DAYOFWEEK(birthday) = "5" THEN "Thursday" WHEN DAYOFWEEK(birthday) = "6" THEN "Friday" WHEN DAYOFWEEK(birthday) = "7" THEN "Saturday" ELSE "not a day of week" END AS day_of_weekFROM friendsLIMIT 10

Awesome! Điều kia hoạt động hoàn hảo và tuyệt vời nhất. Nhưng nó hơi lâu năm để mang tên một ngày vào tuần.

MySQL tất cả một function DAYNAME() phù hợp mang lại việc này. Đơn giản chỉ việc hỗ trợ mang lại nó một quý giá ngày với chúng ta là tiến thưởng.

SELECT first_name, last_name, DAYNAME(birthday)FROM friendsLIMIT 10

3.3 Xử lí tháng

Các hàm MONTH() được thực hiện để đưa những giá trị số theo tháng từ 1 quý giá ngày tháng hỗ trợ. Như trong 1 nghĩa (tháng 1) cùng 12 mang lại (mon 12) với đa số máy không giống trọng tâm.

SELECT (MONTH(birthday)) AS month, COUNT(*) AS number_of_birthdaysFROM friendsGROUP BY monthORDER BY month ASCTrong truy vấn này, hàm COUNT() mang đến số người dân có ngày sinc trong những tháng :


*

Vậy liệu bạn có thể đem tên của mon ko ? câu trả lởi chắc chắn rằng là gồm rồi

Sử dụng hàm MONTHNAME(), rước tên của Tháng thực tế từ quý hiếm ngày vẫn qua, đối với số Tháng qua MONTH().

SELECT DISTINCT (MONTHNAME(birthday)) AS month, COUNT(*) AS number_of_birthdaysFROM friendsGROUP.. BY monthKết trái

3.4 Xử lí ngày

khi bạn tất cả thêm một bạn chúng ta mới, các bạn vui mừng nhập ban bố tín đồ các bạn ấy vào Nhưng, ngày sinch nhật sống dạng chuỗi nhỏng 'ngày 10tháng 08 năm 2017'.

SELECT STR_TO_DATE("August 10 2017", "%M %d %Y")

Giải yêu thích một chút nào

%M %d,%Y được định dạng là %M - Tên tháng. %d - Số ngày vào thời điểm tháng. %Y - 4 chữ số năm.

3.5 Ngày có mức giá trị NOT NULL

nhằm kiểm tra nếu giá trị ngày chưa phải là NULL.

SELECT first_name, last_name, birthdayFROM friendsWHERE birthday IS NOT NULL;Câu lệnh MySQL ở trên đã thanh lọc những hàng bao gồm ngày birthday KHÔNG cần là NULL.

3.5 Lấy ra phần nhiều ngày trong khoảng ngày từ ngày... cho ngày ...

4. Kết luận

Thông qua các ví dụ thực tế trên, mong có thể giúp họ tất cả mẫu nhìn rõ hơn cùng với Việc up date ngày tháng bởi câu lệnh Squốc lộ. Bài viết của bản thân vẫn còn các thiếu sót rất ý muốn nhận được sự góp ý đóng góp của chúng ta để nội dung bài viết được hoàn thành xong hơn

Tài liệu tham khảo :

https://www.w3resource.com/mysql/advance-query-in-mysql/date-calculation.php

https://www.w3school.com https://codeburst.io/handy-mysql-date-functions-with-examples-93dbd79849c5