mysql怎么判断日期 mysql的日期类型

mysql判断日期是星期几

命令:

成都创新互联公司长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为钟楼企业提供专业的成都做网站、网站设计,钟楼网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。

select date_format(curdate(),'%w') from dual;

更多参考:

MySQL中DATE_FORMAT(date, format)函数可根据format字符串格式化日期或日期和时间值date,返回结果串。

也可用DATE_FORMAT( ) 来格式化DATE 或DATETIME 值,以便得到所希望的格式。根据format字符串格式化date值。

mysql date数据输入的时候 如果是日月年,应该怎么才能识别

0 先理解下格式问题

要理解两种格式,一是mysql内部使用和存储时使用的格式,另一个是用户显示的格式;

存储格式:mysql保存日期时间值时使用的CCYY-MM-DD格式遵循ISO 8601标准;

显示格式:显示在输出界面上的格式,可以使用DATA_FORMAT()或TIME_FORMAT()函数来设置和转换;

1 转换和处理

1)提交数据,一是使用标准格式让其自动识别,二是对输入值进行格式指定和转换

insert into t (d) values('2012-01-01'); #使用默认ansi标准格式,让数据库自动识别字串为日期;

insert into t (d) values( STR_TO_DATE('2012/February/01', '%Y/%M/%d') ); #使用字符转换为日期的函数来处理自定义格式的输入值;

2)查询数据,一是不使用格式(即使用默认的CCYY-MM-DD格式),二是指定输出格式

select current_date(); #默认格式

select date_format(current_date(), ''%Y/%M/%d''); #使用自定义格式,具体参考下date_format的帮助,主要是格式控制符的使用。

2 格式化参数

DATE_FORMAT(), TIME_FORMAT(), STR_TO_DATE()这三个函数都接受格式化串作为参数来格式化日期时间

常用的格式化字符:

%Y 4位数字年份 2012

%y 2位数字年份 12

%M 完整英文月份名称,January - December

%b 月份名称前三个字母,Jan - Dec

%m 2位数字月份 01-12

%c 最小位数字月份 1-12

%d 2位数字日期 01-31

%e 最小位数字日期 1-31

%W 工作日名称 Sunday - Saturday

%r 12小时制时间,以AM或PM结尾

%T 24小时制时间

%H 24小时制小时 00-23

%i 2位数字分钟 00-59

%s 2位数字秒数 00-59

%% %文字字符

求问[Mysql] Mysql 判断日期是周几

这里顺便说一下DAYOFWEEK的用法:DAYOFWEEK(date) (NOTE: 也可小写 dayofweek)返回date (1 = 周日, 2 = 周一, ..., 7 = 周六)对应的工作日索引。mysql SELECT DAYOFWEEK('1998-02-03'); - 3

MySQL验证是否字符是日期串

具体思路:

1.判断字符串是否8位

2.如果是8位,通过datalength判断是否8位,如果不是8位,说明字符串中存在汉字或者不可见字符

3.通过Ascii码对8位中的每一位字符进行判断,目的是判断是否数字(按照AsciI码可以避免不可见字符)

4.如果符合上述3中条件,说明字符是8位的数字,判断是否正常日期

Mysql 日期比较

这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内:

mysql SELECT something FROM table

WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) = 30;

DAYOFWEEK(date)

返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。

mysql select DAYOFWEEK('1998-02-03');

- 3

WEEKDAY(date)

返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。

mysql select WEEKDAY('1997-10-04 22:23:00');

- 5

mysql select WEEKDAY('1997-11-05');

- 2

DAYOFMONTH(date)

返回date的月份中日期,在1到31范围内。

mysql select DAYOFMONTH('1998-02-03');

- 3

DAYOFYEAR(date)

返回date在一年中的日数, 在1到366范围内。

mysql select DAYOFYEAR('1998-02-03');

- 34

MONTH(date)

返回date的月份,范围1到12。

mysql select MONTH('1998-02-03');

- 2

DAYNAME(date)

返回date的星期名字。

mysql select DAYNAME("1998-02-05");

- 'Thursday'

MONTHNAME(date)

返回date的月份名字。

mysql select MONTHNAME("1998-02-05");

- 'February'

QUARTER(date)

返回date一年中的季度,范围1到4。

mysql select QUARTER('98-04-01');

- 2

WEEK(date)

WEEK(date,first)

对于星期天是一周的第一天的地方,有一个单个参数,返回date的周数,范围在0到52。2个参数形式WEEK()允许

指定星期是否开始于星期天或星期一。如果第二个参数是0,星期从星期天开始,如果第二个参数是1,

从星期一开始。

mysql select WEEK('1998-02-20');

- 7

mysql select WEEK('1998-02-20',0);

- 7

mysql select WEEK('1998-02-20',1);

- 8

YEAR(date)

返回date的年份,范围在1000到9999。

mysql select YEAR('98-02-03');

- 1998

HOUR(time)

返回time的小时,范围是0到23。

mysql select HOUR('10:05:03');

- 10

MINUTE(time)

返回time的分钟,范围是0到59。

mysql select MINUTE('98-02-03 10:05:03');

- 5

SECOND(time)

回来time的秒数,范围是0到59。

mysql select SECOND('10:05:03');

- 3

PERIOD_ADD(P,N)

增加N个月到阶段P(以格式YYMM或YYYYMM)。以格式YYYYMM返回值。注意阶段参数P不是日期值。

mysql select PERIOD_ADD(9801,2);

- 199803

PERIOD_DIFF(P1,P2)

返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。

mysql select PERIOD_DIFF(9802,199703);

- 11

DATE_ADD(date,INTERVAL expr type)

DATE_SUB(date,INTERVAL expr type)

ADDDATE(date,INTERVAL expr type)

SUBDATE(date,INTERVAL expr type)

这些功能执行日期运算。对于MySQL 3.22,他们是新的。ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同义词。

如何利用MySQL函数查询特定的日期时间

MySQL数据库中year()函数是求某个特定日期中的年份,代码如下:

select

'2015-08-11'

as

date,year('2015-08-11')

as

year;

确定一个日期是一年中的第几个季度,可以用QUARTER()函数实现,代码如下:

SELECT

'2015-08-11'

AS

DATE,QUARTER('2015-08-11')

AS

QUARTER;

返回一个日期是一年中的月份,利用month()函数实现,代码如下:

SELECT

'2015-08-11'

AS

DATE,MONTH('2015-08-11')

AS

MONTH;

获取一个确定日期是一个月份中的多少号,可以用day()函数求得,具体实现代码如下:

SELECT

'2015-08-11'

AS

DATE,DAY('2015-08-11')

AS

DAY;

有时日期中带有时间,而如何获取小时数,这可以利用自带的函数hour()实现,代码如下:

SELECT

'2015-08-11

12:20:45'

AS

DATE,HOUR('2015-08-11

12:20:45')

AS

HOUR;

求取日期时间中的分钟数,可以利用MINUTE()函数实现,代码如下:

SELECT

'2015-08-11

12:20:45'

AS

DATE,MINUTE('2015-08-11

12:20:45')

AS

MINUTE;

最后,获取时间中的秒数,利用SECOND()函数实现,代码如下:

SELECT

'2015-08-11

12:20:45'

AS

DATE,SECOND('2015-08-11

12:20:45')

AS

SECOND;


新闻名称:mysql怎么判断日期 mysql的日期类型
标题路径:http://hbruida.cn/article/docjepo.html