使用Getdate()和Convert()函数可以实现。
使用方法如下:
select convert(varchar(10),getdate(),120) as CurDate延伸:
1、Getdate()函数返回当前SQL服务器中的计算机时间,包含:年-月-日 时-分-秒毫秒
2、Convert()函数是转换数据格式,因为只需要日期部分,所以只用varchar(10)长度即可,若需要完整时间可以使用varchar(19)
年,月,日,时,分,秒,你是分在不同的字段存的是吧,那么,年份是最大的单位是吧,年份数值最大的就是时间最新的,后边的月,日等等就都可以省略了不是。如果年份相同,那么再比较月份最大的,如果月份相同再比较费话太多了,省略之,咱说重点
MySQL语句:
SELECT FROM `grmc_awst_ele` ORDER BY `c_oyyyy` DESC,`c_omm` DESC,`c_odd` DESC,`C_OHH` DESC,`C_OMN` DESC,`C_OSS` DESC LIMIT 1
然后你括号里的东西“(年 datatime)”数据类型是datatime吗?为什么你把年,月,日,时,分,秒存在不同的字段却使用这种数据类型,滑稽吧。
我敢打保证,我上边的语句在Mysql下边一定能起到你要的效果,但是不知道你的sql是什么。
一、DateAdd()方法说明
SQL Server提供了日期函数DateAdd用于获得某日期指定间隔后的日期。
1 定义和用法
DATEADD() 函数在日期中添加或减去指定的时间间隔。
2 语法
DATEADD(datepart,number,date)
date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
datepart 参数可以是下列的值:
datepart
缩写
年 yy, yyyy
季度 qq, q
月 mm, m
年中的日 dy, y
日 dd, d
周 wk, ww
星期 dw, w
小时 hh
分钟 mi, n
秒 ss, s
毫秒 ms
微妙 mcs
纳秒 ns
实例
假设我们有下面这个 "Orders" 表:
OrderId
ProductName
OrderDate
'Computer' 2016-12-29 16:25:46635
现在,我们希望向 "OrderDate" 添加 2 天,这样就可以找到付款日期。
我们使用如下 SELECT 语句:
SELECT OrderId,DATEADD(day,2,OrderDate) AS OrderPayDateFROM Orders
结果:
OrderId
OrderPayDate
2016-12-31 16:25:46635
二、SQL代码
PRINT DateAdd(day, -3, GetDate())三、运行测试
05 20 2017 3:10PM
sql读取系统日期和时间的方法如下:
--获取当前日期(如:yyyymmdd)
select CONVERT (nvarchar(12),GETDATE(),112)
--获取当前日期(如:yyyymmdd hh:MM:ss)
select GETDATE()
--获取当前日期(如:yyyy-mm-dd)
Select Datename(year,GetDate())+'-'+Datename(month,GetDate())+'-'+Datename(day,GetDate())
--获取当前日期(如:yyyy/mm/dd)
select DATENAME(YEAR,GETDATE())+'/'+DATENAME(MONTH,GETDATE())+'/'+DATENAME(DAY,GETDATE())
--获取几种日期
select DATENAME(YEAR,GETDATE()) --年份(YYYY)
select DATENAME(YY,GETDATE())
select DATENAME(MM,GETDATE()) --月份
select DATENAME(DD,GETDATE()) --日期
select dateName(hh,getdate()) --获取小时
select DATENAME(MI,GETDATE()) --获取分钟
select DATENAME(SECOND,GETDATE()) --获取秒
select DATENAME(WEEK,GETDATE()) --获取当前星期(周)是这一年中的第几个星期(周)
select DATENAME(WEEKDAY,GETDATE()) --星期几
不同数据库获取方式也是不一样的
Oracle:
系统时间比较熟悉 是select sysdate from dual时间类型获取;
select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') from dual;以字符串形式获取
SQL Server:
使用GETDATE()
SQL Server拥有非常强大的日期函数:
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2008 10:57AM
MYSQL
select now();
转自: >
首先 这个当前 所在 DataBase 肯定需要用到 系统存储过程 这一点是 十分肯定的,我自然想到了sp_who 执行后,列出了当前所有的 系统进程的 所有信息,我一看 有 Runnable,有 Slepping 肯定应该是runnable 了,一看 他的 spid 想起来了,有个系统的 全局变量@@SPID,先试一下,sp_who @@spid 哈哈 成功了这个问题的解决之道 是 一定要熟悉 系统的存储过程和系统全局变量,并且要善于观察和思考
以上就是关于sql 怎样查询现在日期全部的内容,包括:sql 怎样查询现在日期、sql 查询问题:如何获取表中最新时间、如何用Sql语句获取当前时间,并且在当前时间的基础上减去3天的时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)