重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
取得當前時間用 now() 就行。
創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的大興網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
在數(shù)據(jù)庫中格式化時間 用DATE_FORMA T(date, format) .
根據(jù)格式串format 格式化日期或日期和時間值date,返回結(jié)果串。
可用DATE_FORMAT( ) 來格式化DATE 或DATETIME 值,以便得到所希望的格式。根據(jù)format字符串格式化date值:
%S, %s 兩位數(shù)字形式的秒( 00,01, . . ., 59)
%i 兩位數(shù)字形式的分( 00,01, . . ., 59)
%H 兩位數(shù)字形式的小時,24 小時(00,01, . . ., 23)
%h, %I 兩位數(shù)字形式的小時,12 小時(01,02, . . ., 12)
%k 數(shù)字形式的小時,24 小時(0,1, . . ., 23)
%l 數(shù)字形式的小時,12 小時(1, 2, . . ., 12)
%T 24 小時的時間形式(h h : m m : s s)
%r 12 小時的時間形式(hh:mm:ss AM 或hh:mm:ss PM)
%p AM 或P M
%W 一周中每一天的名稱( S u n d a y, Monday, . . ., Saturday)
%a 一周中每一天名稱的縮寫( Sun, Mon, . . ., Sat)
%d 兩位數(shù)字表示月中的天數(shù)( 00, 01, . . ., 31)
%e 數(shù)字形式表示月中的天數(shù)( 1, 2, . . ., 31)
%D 英文后綴表示月中的天數(shù)( 1st, 2nd, 3rd, . . .)
%w 以數(shù)字形式表示周中的天數(shù)( 0 = S u n d a y, 1=Monday, . . ., 6=Saturday)
%j 以三位數(shù)字表示年中的天數(shù)( 001, 002, . . ., 366)
% U 周(0, 1, 52),其中Sunday 為周中的第一天
%u 周(0, 1, 52),其中Monday 為周中的第一天
%M 月名(J a n u a r y, February, . . ., December)
%b 縮寫的月名( J a n u a r y, February, . . ., December)
%m 兩位數(shù)字表示的月份( 01, 02, . . ., 12)
%c 數(shù)字表示的月份( 1, 2, . . ., 12)
%Y 四位數(shù)字表示的年份
%y 兩位數(shù)字表示的年份
%% 直接值“%”
select date_format(日期字段,’%Y-%m-%d’) as ‘日期’ from test
方法一:select date_format(日期字段,'%Y-%m') as '日期' from 表
方法二:mysql有日期函數(shù)?date_format
SELECT date_format(signDate,'%Y-%m') AS MY_YM FROM tablename WHERE 1;
方法三:對這個字段使用函數(shù)left或者substring
例如:
select left(signDate,7) as date from tablename 或者
select substring(signDate,0,7) as date from tablename
擴展資料:
MySQL 截取部分日期
使用 DATE_FORMAT(get_date, '%Y-%m-%d') 函數(shù)截取。
其中:get_date 是需要截取的字段名;'%Y-%m-%d' 是截取后的日期格式。
select date_format('1997-10-04 22:23:00','%y %M %b %D %W %a %Y-%m-%d %H:%i:%s %r %T');
結(jié)果:97 October Oct 4th Saturday Sat 1997-10-04 22:23:00 10:23:00 PM 22:23:00
get_date = "2006-12-07"
SELECT count(*) FROM t_get_video_temp Where DATE_FORMAT(get_date, '%Y-%m-%d')='2006-12-07';
SELECT count(*) FROM t_get_video_temp Where get_date like '2006%-07%';
NOW()函數(shù)以`'YYYY-MM-DD HH:MM:SS'返回當前的日期時間,可以直接存到DATETIME字段中。
CURDATE()以’YYYY-MM-DD’的格式返回今天的日期,可以直接存到DATE字段中。
CURTIME()以’HH:MM:SS’的格式返回當前的時間,可以直接存到TIME字段中。
年日月:curdate()或者current_date()
時分秒:curtime()或者current_time()
如果想截取一個timestamp的年日月或者時分秒可以用date()跟time()函數(shù)
比如time(current_timestamp()),date(current_timestamp())
方法/步驟 select curDate(); #獲取當前日期select curTime(); #獲取當前時間select now(); #獲取當前日期+時間 列舉1個天數(shù)加減的例子,其他的看英文意思就可以理解了 select date_add(now(), interval 1 day); #當前日期天數(shù)+1 select date_add(now(), interval -1 day); #當前日期天數(shù)-1 select date_add(now(), interval 1 hour); select date_add(now(), interval 1 minute); select date_add(now(), interval 1 second); select date_add(now(), interval 1 microsecond); select date_add(now(), interval 1 week); select date_add(now(), interval 1 month); select date_add(now(), interval 1 quarter); select date_add(now(), interval 1 year); date_sub與date_add功能整合相反 select date_sub(now(), interval 1 day); #當前日期天數(shù)-select date_sub(now(), interval -1 day); #當前日期天數(shù)+select date_sub(now(), interval 1 hour); select date_sub(now(), interval 1 minute)select date_sub(now(), interval 1 second)select date_sub(now(), interval 1 microsecond)select date_sub(now(), interval 1 week)select date_sub(now(), interval 1 month)select date_sub(now(), interval 1 quarter)select date_sub(now(), interval 1 year); datediff函數(shù)計算兩個日期間隔的天數(shù) datediff(date1, date2); #date1 - date2 timediff函數(shù)計算兩個時間間隔 timediff(time1, time2); #time1 - time2 time1和time2的格式必須要一樣,返回時間差 str_to_date(str, format) 字符串轉(zhuǎn)換為日期 select str_to_date('11/09/2014', '%m/%d/%Y'); -- 2014-11-09
可以了解一下MySQL的時間戳(Timestamp)數(shù)據(jù)類型:
默認時間戳(Timestamp)類型的取值范圍為'1970-01-01 00:00:01' UTC至'2038-01-19 03:14:07' UTC,數(shù)據(jù)精確到秒級別,該取值范圍包含約22億個數(shù)值,因此在MySQL內(nèi)部使用4個字節(jié)INT類型來存放時間戳數(shù)據(jù):
1、在存儲時間戳數(shù)據(jù)時,先將本地時區(qū)時間轉(zhuǎn)換為UTC時區(qū)時間,再將UTC時區(qū)時間轉(zhuǎn)換為INT格式的毫秒值(使用UNIX_TIMESTAMP函數(shù)),然后存放到數(shù)據(jù)庫中。
2、在讀取時間戳數(shù)據(jù)時,先將INT格式的毫秒值轉(zhuǎn)換為UTC時區(qū)時間(使用FROM_UNIXTIME函數(shù)),然后再轉(zhuǎn)換為本地時區(qū)時間,最后返回給客戶端。
(Timestamp)時間戳列可以有四張組合定義,其含義分別為:
1、當字段定義為timestamp,表示該字段在插入和更新時都不會自動設(shè)置為當前時間。
2、當字段定義為timestamp DEFAULT CURRENT_TIMESTAMP,表示該字段僅在插入且未指定值時被賦予當前時間,再更新時且未指定值時不做修改。
3、當字段定義為timestamp ON UPDATE CURRENT_TIMESTAMP,表示該字段在插入且未指定值時被賦值為"0000-00-00 00:00:00",在更新且未指定值時更新為當前時間。
4、當字段定義為timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,表示該字段在插入或更新時未指定值,則被賦值為當前時間。