从sqlserver中取出date时间有时分秒,我怎么转格式,怎么做只保留年月日呀

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从sqlserver中取出date时间有时分秒,我怎么转格式,怎么做只保留年月日呀相关的知识,希望对你有一定的参考价值。

String sql=select contTitle,date from englishdepContent
<span class="time"><%=map.get("DATE") %></span>
取出的时间为本地的当前时间包含十分秒如2114-04-15 13:57:34,237,我想只保留年月日怎摸弄呀

参考技术A map.get("DATE").ToString("yyyy-MM-dd"),如果你的get方法返回的不是datetime类型,需要转换一下,datetime.parse 参考技术B <span class="time"><%=Convert.ToDateTime(map.get("DATE")).ToString("yyyy-MM-dd") %></span>

本回答被提问者采纳
参考技术C SELECT DATEPART(year, GETDATE()),DATEPART(month, GETDATE()),DATEPART(day, GETDATE()) from 你的表

sql查询:数据库中的时间有时分秒,我想查某一天和某一时间段的数据(2013-4-15,2013-5-4)的数据

应该怎么写查询语句
SELECT count(*) from tb_users where convert(varchar(10),enter_date,120)
BETWEEN '2013-05-23' AND '2013-05-24'
这样不对

参考技术A 转换一下即可:
sqlserver:
select * from tab
where convert(varchar(10),datecol,120)
between '2013-04-15' and '2013-05-04'
oracle
select * from tabxxx
where to_char(datecol,'yyyy-mm-dd') between '2013-04-15' and '2013-05-04'追问

不对

追答

怎么不对,你要查某一天的数据,等于就行了
SELECT count(*) from tb_users where convert(varchar(10),enter_date,120) = '2013-05-24'

between是大于等于,小于等于

SELECT count(*) from tb_users where convert(varchar(10),enter_date,120) BETWEEN '2013-05-23' AND '2013-05-24'
是查23,24两天的数据

追问

convert(varchar(10),enter_date,120)是这个不对

追答

能把问题描述清楚点吗?

你的enter_date是datetime还是varchar类型?
如果是datetime类型,不应该错
如果是varchar类型,那你的日期格式是什么?如果是完整的yyyy-MM-dd hh:mm:ss,你就直接left就可以了
left(enter_date,10) = '2013-07-05'

本回答被提问者和网友采纳
参考技术B 你的enter_date不是datetime精工的吗,不要转换

SELECT count(*)
from tb_users
where enter_date BETWEEN '2013-05-23' AND '2013-05-24'

直接这样就ok追问

只能取到23号的,不能获取24号的

追答

SELECT count(*)
from tb_users
where enter_date BETWEEN '2013-05-23 00:00:00' AND '2013-05-24 23:59:59'

参考技术C 这样试试 SELECT count(*) from tb_users where enter_date>='2013-05-23' AND enter_date<'2013-05-24'追问

只能取到一天的,取不到两天的

追答

是只取一天,没取两天.
大于23日,小于24日的,没错啊。
用between 就是加时间'2013-05-23 00:00:00' and '2013-05-24 23:59:59'

参考技术D 奇怪。。为什么要去掉时分秒?

select count(*) from tb_users
where 时间>='2013-05-23'and
时间<'2013-05-24'
这样就ok了啊。。
第5个回答  推荐于2021-01-29 select * from table where 时间 between and 至于具体到分秒,你可以用format 函数

以上是关于从sqlserver中取出date时间有时分秒,我怎么转格式,怎么做只保留年月日呀的主要内容,如果未能解决你的问题,请参考以下文章

sql查询:数据库中的时间有时分秒,我想查某一天和某一时间段的数据(2013-4-15,2013-5-4)的数据

sql 怎么判断时间 有否有时分秒 (急)

php将i:s分秒转秒的最正确方法

mysql按照时间条件查询 忽略是时分秒查询

在java中用mysql在数据库中读取一个日期,但是读出来之后有时分秒,我如何只截取他的年月日,在啥时候截

java.sql.Date类型时间获取当前时间,精确到时分秒的方法