select year(curdate()),month(curdate()),day(curdate());
成都創(chuàng)新互聯(lián)公司是一家專(zhuān)注于成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),橫山網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:橫山等地區(qū)。橫山做網(wǎng)站價(jià)格咨詢(xún):18980820575
select weekofyear(curdate());
有點(diǎn)細(xì)微的差別,weekofyear(date)相當(dāng)于week(date,3).
下面是week(date,Mode),取值的說(shuō)明,根據(jù)自己的實(shí)際情況取自己想要的值
Mode 工作日 范圍 Week 1 為第一周 ...
0 周日 0-53 本年度中有一個(gè)周日
1 周一 0-53 本年度中有3天以上
2 周日 1-53 本年度中有一個(gè)周日
3 周一 1-53 本年度中有3天以上
4 周日 0-53 本年度中有3天以上
5 周一 0-53 本年度中有一個(gè)周一
6 周日 1-53 本年度中有3天以上
7 周一 1-53 本年度中有一個(gè)周一
select date_format(now(),'%Y')
select date_format(now(),'%m')
select date_format(now(),'%e')
select date_format(now(),'%U')
select year(curdate()),month(curdate()),dayofyear(curdate()),weekofyear(curdate());
◆ TIME(expr)
提取一個(gè)時(shí)間或日期時(shí)間表達(dá)式的時(shí)間部分,并將其以字符串形式返回。
mysql SELECT TIME('2003-12-31 01:02:03');
- '01:02:03'
mysql SELECT TIME('2003-12-31 01:02:03.000123');
- '01:02:03.000123'
◆ TIMEDIFF(expr,expr2)
TIMEDIFF() 返回起始時(shí)間 expr 和結(jié)束時(shí)間expr2 之間的時(shí)間。 expr 和expr2 為時(shí)間或 date-and-time 表達(dá)式,兩個(gè)的類(lèi)型必須一樣。
mysql SELECT TIMEDIFF('2000:01:01 00:00:00',
- '2000:01:01 00:00:00.000001');
- '-00:00:00.000001'
mysql SELECT TIMEDIFF('1997-12-31 23:59:59.000001',
- '1997-12-30 01:01:01.000002');
- '46:58:57.999999'
◆ TIMESTAMP(expr) , TIMESTAMP(expr,expr2)
對(duì)于一個(gè)單參數(shù),該函數(shù)將日期或日期時(shí)間表達(dá)式 expr 作為日期時(shí)間值返回.對(duì)于兩個(gè)參數(shù), 它將時(shí)間表達(dá)式 expr2 添加到日期或日期時(shí)間表達(dá)式 expr 中,將theresult作為日期時(shí)間值返回。
mysql SELECT TIMESTAMP('2003-12-31');
- '2003-12-31 00:00:00'
mysql SELECT TIMESTAMP('2003-12-31 12:00:00','12:00:00');
- '2004-01-01 00:00:00'
◆ TIMESTAMPADD(interval,int_expr,datetime_expr)
將整型表達(dá)式int_expr 添加到日期或日期時(shí)間表達(dá)式 datetime_expr中。 int_expr 的單位被時(shí)間間隔參數(shù)給定,該參數(shù)必須是以下值的其中一個(gè): FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR。
可使用所顯示的關(guān)鍵詞指定Interval值,或使用SQL_TSI_前綴。例如, DAY或SQL_TSI_DAY 都是正確的。
mysql SELECT TIMESTAMPADD(MINUTE,1,'2003-01-02');
- '2003-01-02 00:01:00'
mysql SELECT TIMESTAMPADD(WEEK,1,'2003-01-02');
- '2003-01-09'
◆ TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)
返回日期或日期時(shí)間表達(dá)式datetime_expr1 和datetime_expr2the 之間的整數(shù)差。其結(jié)果的單位由interval 參數(shù)給出。interval 的法定值同TIMESTAMPADD()函數(shù)說(shuō)明中所列出的相同。
mysql SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
- 3
mysql SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');
- -1
◆ TIME_FORMAT(time,format)
其使用和 DATE_FORMAT()函數(shù)相同, 然而format 字符串可能僅會(huì)包含處理小時(shí)、分鐘和秒的格式說(shuō)明符。其它說(shuō)明符產(chǎn)生一個(gè)NULL值或0。
若time value包含一個(gè)大于23的小時(shí)部分,則 %H 和 %k 小時(shí)格式說(shuō)明符會(huì)產(chǎn)生一個(gè)大于0..23的通常范圍的值。另一個(gè)小時(shí)格式說(shuō)明符產(chǎn)生小時(shí)值模數(shù)12。
mysql SELECT TIME_FORMAT('100:00:00', '%H %k %h %I %l');
- '100 100 04 04 4'
◆ TIME_TO_SEC(time)
返回已轉(zhuǎn)化為秒的time參數(shù)。
mysql SELECT TIME_TO_SEC('22:23:00');
- 80580
mysql SELECT TIME_TO_SEC('00:39:38');
- 2378
◆ TO_DAYS(date)
給定一個(gè)日期date, 返回一個(gè)天數(shù) (從年份0開(kāi)始的天數(shù) )。
mysql SELECT TO_DAYS(950501);
- 728779
mysql SELECT TO_DAYS('1997-10-07');
- 729669
TO_DAYS() 不用于陽(yáng)歷出現(xiàn)(1582)前的值,原因是當(dāng)日歷改變時(shí),遺失的日期不會(huì)被考慮在內(nèi)。
請(qǐng)記住, MySQL使用“日期和時(shí)間類(lèi)型”中的規(guī)則將日期中的二位數(shù)年份值轉(zhuǎn)化為四位。例如, '1997-10-07'和 '97-10-07' 被視為同樣的日期:
mysql SELECT TO_DAYS('1997-10-07'), TO_DAYS('97-10-07');
- 729669, 729669
對(duì)于1582 年之前的日期(或許在其它地區(qū)為下一年 ), 該函數(shù)的結(jié)果實(shí)不可靠的。
◆ UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)
若無(wú)參數(shù)調(diào)用,則返回一個(gè)Unix timestamp ('1970-01-01 00:00:00' GMT 之后的秒數(shù)) 作為無(wú)符號(hào)整數(shù)。若用date 來(lái)調(diào)用UNIX_TIMESTAMP(),它會(huì)將參數(shù)值以'1970-01-01 00:00:00' GMT后的秒數(shù)的形式返回。date 可以是一個(gè)DATE 字符串、一個(gè) DATETIME字符串、一個(gè) TIMESTAMP或一個(gè)當(dāng)?shù)貢r(shí)間的YYMMDD 或YYYMMDD格式的數(shù)字。
mysql SELECT UNIX_TIMESTAMP();
- 882226357
mysql SELECT UNIX_TIMESTAMP('1997-10-04 22:23:00');
- 875996580
當(dāng) UNIX_TIMESTAMP被用在 TIMESTAMP列時(shí), 函數(shù)直接返回內(nèi)部時(shí)戳值, 而不進(jìn)行任何隱含的 “string-to-Unix-timestamp”轉(zhuǎn)化。假如你向UNIX_TIMESTAMP()傳遞一個(gè)溢出日期,它會(huì)返回 0,但請(qǐng)注意只有基本范圍檢查會(huì)被履行 (年份從1970 到 2037, 月份從01到12,日期從 01 到31)。
假如你想要減去 UNIX_TIMESTAMP() 列, 你或許希望刪去帶符號(hào)整數(shù)的結(jié)果。
◆ UTC_DATE, UTC_DATE()
返回當(dāng)前 UTC日期值,其格式為 'YYYY-MM-DD' 或 YYYYMMDD,具體格式取決于函數(shù)是否用在字符串或數(shù)字語(yǔ)境中。
mysql SELECT UTC_DATE(), UTC_DATE() + 0;
- '2003-08-14', 20030814
◆ UTC_TIME, UTC_TIME()
返回當(dāng)前 UTC 值,其格式為 'HH:MM:SS' 或HHMMSS,具體格式根據(jù)該函數(shù)是否用在字符串或數(shù)字語(yǔ)境而定。
mysql SELECT UTC_TIME(), UTC_TIME() + 0;
- '18:07:53', 180753
◆ UTC_TIMESTAMP, UTC_TIMESTAMP()
返回當(dāng)前UTC日期及時(shí)間值,格式為 'YYYY-MM-DD HH:MM:SS' 或YYYYMMDDHHMMSS,具體格式根據(jù)該函數(shù)是否用在字符串或數(shù)字語(yǔ)境而定。
mysql SELECT UTC_TIMESTAMP(), UTC_TIMESTAMP() + 0;
- '2003-08-14 18:08:04', 20030814180804
◆ WEEK(date[,mode])
該函數(shù)返回date 對(duì)應(yīng)的星期數(shù)。WEEK() 的雙參數(shù)形式允許你指定該星期是否起始于周日或周一, 以及返回值的范圍是否為從0 到53 或從1 到53。若 mode參數(shù)被省略,則使用default_week_format系統(tǒng)自變量的值。請(qǐng)參見(jiàn)5.3.3節(jié),“服務(wù)器系統(tǒng)變量”。
以下表說(shuō)明了mode 參數(shù)的工作過(guò)程:
mysql SELECT WEEK('1998-02-20');
- 7
mysql SELECT WEEK('1998-02-20',0);
- 7
mysql SELECT WEEK('1998-02-20',1);
- 8
mysql SELECT WEEK('1998-12-31',1);
- 53
注意,假如有一個(gè)日期位于前一年的最后一周, 若你不使用2、3、6或7作為mode 參數(shù)選擇,則MySQL返回 0:
mysql SELECT YEAR('2000-01-01'), WEEK('2000-01-01',0);
- 2000, 0
有人或許會(huì)提出意見(jiàn),認(rèn)為 MySQL 對(duì)于WEEK() 函數(shù)應(yīng)該返回 52 ,原因是給定的日期實(shí)際上發(fā)生在1999年的第52周。我們決定返回0作為代替的原因是我們希望該函數(shù)能返回“給定年份的星期數(shù)”。這使得WEEK() 函數(shù)在同其它從日期中抽取日期部分的函數(shù)結(jié)合時(shí)的使用更加可靠。
假如你更希望所計(jì)算的關(guān)于年份的結(jié)果包括給定日期所在周的第一天,則應(yīng)使用 0、2、5或 7 作為mode參數(shù)選擇。
mysql SELECT WEEK('2000-01-01',2);
- 52
作為選擇,可使用 YEARWEEK()函數(shù):
mysql SELECT YEARWEEK('2000-01-01');
- 199952
mysql SELECT MID(YEARWEEK('2000-01-01'),5,2);
- '52'
◆ WEEKDAY(date)
返回date (0 = 周一, 1 = 周二, ... 6 = 周日)對(duì)應(yīng)的工作日索引 weekday index for
mysql SELECT WEEKDAY('1998-02-03 22:23:00');
- 1
mysql SELECT WEEKDAY('1997-11-05');
- 2
◆ WEEKOFYEAR(date)
將該日期的陽(yáng)歷周以數(shù)字形式返回,范圍是從1到53。它是一個(gè)兼容度函數(shù),相當(dāng)于WEEK(date,3)。
mysql SELECT WEEKOFYEAR('1998-02-20');
- 8
◆ YEAR(date)
返回date 對(duì)應(yīng)的年份,范圍是從1000到9999。
mysql SELECT YEAR('98-02-03');
- 1998
◆ YEARWEEK(date), YEARWEEK(date,start)
返回一個(gè)日期對(duì)應(yīng)的年或周。start參數(shù)的工作同 start參數(shù)對(duì) WEEK()的工作相同。結(jié)果中的年份可以和該年的第一周和最后一周對(duì)應(yīng)的日期參數(shù)有所不同。
mysql SELECT YEARWEEK('1987-01-01');
- 198653
注意,周數(shù)和WEEK()函數(shù)隊(duì)可選參數(shù)0或 1可能會(huì)返回的(0) w有所不同,原因是此時(shí) WEEK() 返回給定年份的語(yǔ)境中的周。
select * from 表 where date_format(日期,'%Y-%m-%d')='2014-04-01' 日期
select * from 表 where date_format(日期,'%Y-%m')='2014-04' 月份
select * from 表 where date_format(日期,'%Y')='2014' 年
就是date_format(日期,'%Y-%m-%d') 這里的參數(shù)長(zhǎng)短
方法一:select date_format(日期字段,'%Y-%m') as '日期' from 表
方法二:mysql有日期函數(shù)?date_format
SELECT date_format(signDate,'%Y-%m') AS MY_YM FROM tablename WHERE 1;
方法三:對(duì)這個(gè)字段使用函數(shù)left或者substring
例如:
select left(signDate,7) as date from tablename 或者
select substring(signDate,0,7) as date from tablename
擴(kuò)展資料:
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%';
本文標(biāo)題:mysql怎么提取月份,mysql取當(dāng)前月份
文章源于:http://jinyejixie.com/article36/dssicsg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、建站公司、域名注冊(cè)、品牌網(wǎng)站建設(shè)、虛擬主機(jī)、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)