ຄຳ Date Function SQL

  • ຫນ້າທີ່ຫນ້າທີ່ຫນ້າທີ່ SQL View
  • ຫນ້າທີ່ຫນ້າທີ່ຫນ້າທີ່ຫນ້າທີ່ SQL Nulls

SQL ວັນທີ

ຄວາມຍາກທີ່ສຸດທີ່ພວກເຮົາຈະກໍາລັງຮັບປະກັນວ່າຮູບແບບວັນທີທີ່ຈະເພີ່ມຂື້ນຈະຈະຄົງກັນກັບຮູບແບບວັນທີຂອງວົງມານິວບັນຍານວັນທີ.

ພຽງແຕ່ບັນດາຂໍ້ມູນທີ່ມີພາກວັນທີພຽງພຽງແຕ່ບັນດາການຊອກຫາຈະບໍ່ມີບັນຫາ. ແຕ່ຖ້າມີເວລາ, ການຄິດຂອງພວກເຮົາຈະມີຄວາມຄິດຫຼາຍກວ່າ.

ກ່ອນທີ່ພວກເຮົາກໍາລັງກ່ຽວກັບຄວາມຄິດຂອງການຊອກຫາວັນທີຫຼາຍຄວາມຄິດຂອງພວກເຮົາຈະກໍາລັງກ່ຽວກັບບັນດາບັນດາບັນຍານວັນທີທີ່ມີຄວາມສໍາຄັນຫຼາຍ:

ບັນດາບັນຍານວັນທີຂອງ MySQL

ຕາຕະລາງດັ່ງກ່າວລວມບັນດາບັນດາບັນຍານວັນທີທີ່ມີຄວາມສໍາຄັນຫຼາຍໃນ MySQL:

ຫົວຫຼັກ ອະທິບາຍ
NOW() ກັບວັນທີແລະເວລາທີ່ປະຈຸບັນ
CURDATE() ກັບວັນທີທີ່ປະຈຸບັນ
CURTIME() ກັບເວລາທີ່ປະຈຸບັນ
DATE() ການເອົາພາກສ່ວນວັນທີຫຼືວັນທີ/ເວລາຂອງການສະແດງວັນທີ/ເວລາ
EXTRACT() ກັບວັນທີ/ເວລາທີ່ຈະກັບກັນ
DATE_ADD() ຈະເພີ່ມເວລາຂອງວັນທີ
DATE_SUB() ຈາກວັນທີທີ່ຈະຫຼຸດອອກເວລາຂອງວັນທີ
DATEDIFF() ກັບວັນທີທີ່ຈະກັບກັນ
DATE_FORMAT() ສະແດງວັນ/ເວລາທີ່ມີຮູບແບບທີ່ແຕກຕ່າງກັນ

ບັນດາບັນຍານວັນທີຂອງ SQL Server

ຕາຕະລາງດັ່ງກ່າວລວມບັນດາຫົວຫຼັກບັນດາບັນຍານວັນທີທີ່ມີຄວາມສໍາຄັນຫຼາຍໃນ SQL Server:

ຫົວຫຼັກ ອະທິບາຍ
GETDATE() ກັບວັນທີແລະເວລາທີ່ປະຈຸບັນ
DATEPART() ກັບວັນທີ/ເວລາທີ່ຈະກັບກັນ
DATEADD() ສະເພາະກັບວັນທີໃນທີ່ຈະເພີ່ມຫຼືຫຼຸດອອກເວລາຂອງວັນທີ
DATEDIFF() ກັບວັນທີທີ່ຈະກັບກັນ
CONVERT() ສະແດງວັນ/ເວລາທີ່ມີຮູບແບບທີ່ແຕກຕ່າງກັນ

ບັນດາບັນຍານ SQL Date

MySQL ນຳໃຊ້ບັນດາບັນຍານຂອງຂໍ້ມູນທີ່ພາຍໃນຖານຂໍ້ມູນເພື່ອບັນທຶກວັນທີຫຼືວັນທີ/ເວລາຫຼືວັນທີ/ເວລາຂອງຂໍ້ມູນ:

  • DATE - ຮູບແບບ YYYY-MM-DD
  • DATETIME - ຮູບແບບ: YYYY-MM-DD HH:MM:SS
  • TIMESTAMP - ຮູບແບບ: YYYY-MM-DD HH:MM:SS
  • YEAR - ຮູບແບບ YYYY ຫລື YY

SQL Server ນຳໃຊ້ບັນດາປະເພດຂໍ້ມູນທີ່ກ່ຽວກັບວັນ ແລະ ວັນ/ເວລາ ໃນຖານຂໍ້ມູນ:

  • DATE - ຮູບແບບ YYYY-MM-DD
  • DATETIME - ຮູບແບບ: YYYY-MM-DD HH:MM:SS
  • SMALLDATETIME - ຮູບແບບ: YYYY-MM-DD HH:MM:SS
  • TIMESTAMP - ຮູບແບບ: ຈຳນວນອັນດັບພຽງຢ່າງດຽວ

ການຂະແນນວັນຂອງ SQL

ຖ້າບໍ່ມີພາກເວລາທີ່ຢູ່ໃນວັນ ພວກເຮົາສາມາດປຽບທຽບວັນຄັ້ງຄັ້ງທັນທີ!

ຖ້າພວກເຮົາມີ "Orders" ຄືກັບດັ່ງກ່າວ:

OrderId ProductName OrderDate
1 computer 2008-12-26
2 printer 2008-12-26
3 electrograph 2008-11-12
4 telephone 2008-10-19

ຕອນນີ້ພວກເຮົາຕ້ອງການເລືອກຂໍ້ມູນຈາກການແບບ "2008-12-26".

ພວກເຮົານຳໃຊ້ SELECT 语句 ທີ່ກ່າວກ່າວນີ້:

SELECT * FROM Orders WHERE OrderDate='2008-12-26'

ຂໍ້ມູນຮຽບຮ້ອງ:

OrderId ProductName OrderDate
1 computer 2008-12-26
3 electrograph 2008-12-26

ຕອນນີ້ພວກເຮົາກໍາລັງຄິດວ່າ "Orders" ຄືກັບດັ່ງກ່າວ (ບໍ່ສາມາດລະບຸພາກເວລາທີ່ຢູ່ໃນວັນ OrderDate):

OrderId ProductName OrderDate
1 computer 2008-12-26 16:23:55
2 printer 2008-12-26 10:45:26
3 electrograph 2008-11-12 14:12:08
4 telephone 2008-10-19 12:56:10

ຖ້າເຈົ້ານຳໃຊ້ຄຳສັ່ງ SELECT ທີ່ກ່າວກ່າວນີ້:

SELECT * FROM Orders WHERE OrderDate='2008-12-26'

ພວກເຮົາບໍ່ສາມາດຮຽບຮ້ອງຄວາມສົມທອນ. ຍ້ອນວ່າການຊອກຫາບໍ່ມີພາກເວລາທີ່ຢູ່ໃນວັນ.

ຄຳແນະນຳ:ຖ້າເຈົ້າຕ້ອງການເຮັດການຊອກຫາທີ່ງ່າຍແລະຄົງຢູ່ຫລາຍກວ່າ ບໍ່ຕ້ອງໃຊ້ພາກເວລາໃນວັນ!

  • ຫນ້າທີ່ຫນ້າທີ່ຫນ້າທີ່ SQL View
  • ຫນ້າທີ່ຫນ້າທີ່ຫນ້າທີ່ຫນ້າທີ່ SQL Nulls