mysql 獲取系統當前時間的3種方式


1.獲取系統當前日期+時間

方式一:now()

方式二:sysdate()

以上兩種方式,對應日期類型:datetime。

方式三:CURRENT_TIMESTAMP()/CURRENT_TIMESTAMP

對應日期類型:timestamp。

方式四:to_days()

說明:這四種方式,對於大小寫都不敏感。

2.獲取系統當前日期

CURRENT_DATE()/CURRENT_DATE

對應日期類型:date。

3.獲取系統當前時間

CURRENT_TIME()/CURRENT_TIME

對應日期類型:time。

4.獲取系統當前年份

year(date)

5.獲取系統當前月份

MONTH(NOW())

或者

DATE_FORMAT(CURRENT_DATE(),'%Y%m')

6.獲取系統當前季度

QUARTER(NOW())

7.獲取系統當前周

YEARWEEK(now())

8.獲取系統當前天數

DAY(date)

8.mysql常用日期類型

以java格式化日期的語法為例,進行說明

datetime(推薦使用):日期+時間,表現形式為:yyyy-MM-dd HH:mm:ss,占用8個字節;

當指定位數時,表示毫秒數的保留位數,如:datetime(6),代表的就是6位毫秒數字。

date:日期,表現形式為:yyyy-MM-dd

time:時間,表現形式為:HH:mm:ss

timestamp:時間戳,表現形式為:yyyy-MM-dd HH:mm:ss,一般占用4個字節,其實際存儲的內容為‘1970-01-01 00:00:00’到現在的毫秒數;

在 MySQL 中,由於類型 TIMESTAMP 占用 4 個字節,因此其存儲的時間上限只能到‘2038-01-19 03:14:07’;

當帶有毫秒數時,占用7個字節,同樣地,當指定位數時,表示毫秒數的保留位數,如:timestamp(6),代表的就是6位毫秒數字;

可以帶有時區屬性。

year:年份,表現形式為:yyyy

說明:

以前的展現形式,在Navicat當中的日期類型的默認展現形式,日期類型的顯示形式,我們可以進行自主設置或修改。

另外,大范圍的日期類型,可以插進小范圍的日期類型當中,並且,只保留小類型的日期格式。 

舉例說明:

創建一個存儲日期類型的表;

查看代碼
CREATE TABLE `date_demo` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `date1` date DEFAULT NULL,
  `datetime1` datetime DEFAULT NULL,
  `time1` time DEFAULT NULL,
  `timestamp1` timestamp NULL DEFAULT NULL,
  `year1` year(4) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci

insert into date_demo (date1,datetime1,time1,timestamp1,year1) values (now(), sysdate(),CURRENT_TIME(),CURRENT_TIMESTAMP(),CURRENT_DATE())

 

我們可以看到:當插入的數據的日期范圍>對應的時間字段時,並不報錯,而且插入的數據也符合對應的字段類型。 

寫在最后

  哪位大佬如若發現文章存在紕漏之處或需要補充更多內容,歡迎留言!!!

 相關推薦:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM