sql数据表里面取日期的年月日

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql数据表里面取日期的年月日相关的知识,希望对你有一定的参考价值。

我数据库表里的日期都是完整格式(年-月-日-时-分-秒),我现在要按时间查找日期等于2011-11-25的数据,应该怎样取表里的日期,也就是只取年月日。分不多,还请大家不吝赐教啊!谢谢

SELECT substring(Convert(VARCHAR(30), 【要查询的字段】, 120),1,10) FROM 【表名】
convert 是将时间类型的转换为字符串类型
subString为截取字符串
substring 三个参数 第一个表示要截取的字段
第二个 表示从哪开始截取
第三个 表示 截取的长度追问

这条查询语句应该是查找所有记录,但只显示日期字段,而且是年月日显示的,我的要求是
select * from [表名] where date=2011-11-25
date字段在表里是完整的格式年-月-日-时-分-秒,这显然是不行的

追答

substring(Convert(VARCHAR(30), 【要查询的字段】, 120),1,10) =‘2011-11-25’
把这个放 where后面即可

追问

谢谢你了~!我刚才语句写错了,已经OK了~

参考技术A select CONVERT(varchar(10),getdate(),120)

SQL里怎么把日期截取为月份

参考技术A 把日期截取为月份有以下几种办法:
1、日期为日期格式,这种最简单,使用Month()函数即可获取月份,如:
select month(getdate()) from dual2、日期为yyyy-mm-dd格式的文本,这种情况下需要转换成日期格式再截取,如:
select TO_CHAR(to_date('2013-01-01', 'yyyy-MM-dd'), 'yyyyMM') dateStr from dual3、日期格式为其他格式,如yyyymmdd或yyyy/mm/dd的,此类格式类似第二种格式可以用类似的语句进行查询,只是转换成日期的时候的格式不一样。
注:以上SQL均基于ORACLE数据库
参考技术B select TO_CHAR(to_date('2013-01-01', 'yyyy-MM-dd'), 'yyyyMM') dateStr from dual; 通过数据库转换函数可以实现。请采纳~~

以上是关于sql数据表里面取日期的年月日的主要内容,如果未能解决你的问题,请参考以下文章

SQL里怎么把日期截取为月份

SQL怎么取一个时间字段里的年月日

sql 如何取日期的年份

sql获取当前年月日

sql 日期分别提取年月?

sql怎么取时间字段的年月日的值