
不同数据库获取方式也是不一样的
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();
SELECT
'当前时间'
AS
[精度],
GETDATE()
AS
[结果]
UNION
ALL
SELECT
'精确到天'
AS
[精度],
DATEADD(dd,
DATEDIFF(dd,
0,
GETDATE()),
0)
AS
[结果]
UNION
ALL
SELECT
'精确到小时'
AS
[精度],
DATEADD(hh,
DATEDIFF(hh,
0,
GETDATE()),
0)
AS
[结果]
UNION
ALL
SELECT
'精确到分'
AS
[精度],
DATEADD(mi,
DATEDIFF(mi,
0,
GETDATE()),
0)
AS
[结果]
精度
结果
----------
-----------------------
当前时间
2012-11-03
16:08:06597
精确到天
2012-11-03
00:00:00000
精确到小时
2012-11-03
16:00:00000
精确到分
2012-11-03
16:08:00000
(4
行受影响)
select getdate()
是显示当前系统时间,输出的日期格式与本机日期格式有关,假入你想在什么情况下都显示成2006-12-15 10:37:00这种形式则需要转换一下
select convert(varchar(30),getdate(),20)
显示是星期几的语句是
select datename(weekday,getdate())
日期加星期的话直接加在一块就可以了
select convert(varchar(30),getdate(),20)+' ,'+select datename(weekday,getdate())
getdate //获得系统当前日期
datepart //获取日期指定部分(年月日时分表)
getdate()函数:取得系统当前的日期和时间。返回值为datetime类型的。
用法:getdate()
使用时间和日期的函数
getdate():获取系统当前时间
dateadd(datepart,number,date):计算在一个时间的基础上增加一个时间后的新时间值,比如:dateadd(yy,30,getdate())
datediff(datepart,startdate,enddate):计算两个时间的差值,比如:datediff(yy,getdate(),'2008-08-08')
dataname(datepart,date):获取时间不同部分的值,返回值为字符串
datepart(datepart,date):和datename相似,只是返回值为整型
day(date):获取指定时间的天数
month(date):获取指定时间的月份
year(date):获取指定时间的年份
看以上具体参数
数据库段有一项为time字段,类型为日期/时间,我有以下SQL语句取系统当前时间插入:
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
如果要在SQL里写的话,递增需要用存储过程或触发器或用户函数来写。
如果只是为了不重复的话,可以用当前时间的millisecond来区分,如我在你另一相同的问题中回答的:
>
以上就是关于获取数据库服务器的当前的时间的SQL语句应该怎么写全部的内容,包括:获取数据库服务器的当前的时间的SQL语句应该怎么写、SQL 语法请教 如何获取系统时间、在SQL中如何调用系统时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)