sql 获取时间

sqlserver 获取当天时间到小时

SELECT CONVERT
    (
    VARCHAR ( 13 ),
    DATEADD( HH, number, CONVERT ( VARCHAR ( 10 ), GETDATE( ), 120 ) ),
    20 
    ) AS d 
FROM
    MASTER..spt_values 
WHERE
    type = 'p' 
    AND DATEDIFF(
    HH,
    DATEADD( HH, number, CONVERT ( VARCHAR ( 10 ), GETDATE( ), 120 ) ),
    CONVERT ( VARCHAR ( 10 ), DATEADD( DAY, 1, GETDATE( ) ), 120 ) 
    ) > 0

SQLServer 获取本年所有月份

with t as
(
select convert(varchar(7),dateadd(mm,t.number,dateadd(year, datediff(year, 0, getdate()), 0)),120)  month
from
(select number from master..spt_values where type='P'AND number>=0 and number<=12) t
where year(dateadd(mm,t.number,dateadd(year, datediff(year, 0, getdate()), 0)))=year(getdate())
)
select month=ROW_NUMBER()OVER(ORDER BY t1.month),
        t1.month year_month
from t t1

SQLServer、Oracle获取当前年份的1月到当前月之间的所有月份

sqlserver:

select convert(varchar(7),dateadd(mm,-t.number,getdate()),120)

from

(select number from master..spt_values where type='P') t

where year(dateadd(mm,-t.number,getdate()))=year(getdate())

order by convert(varchar(7),dateadd(mm,-t.number,getdate()),120)

oracle:

select to_char(add_months(sysdate, -t.rn), 'yyyy-mm')

  from dual a, (select rownum - 1 rn from dual connect by rownum = 12) t

 where to_char(add_months(sysdate, -t.rn), 'yyyy') =

       to_char(sysdate, 'yyyy')

 order by to_char(add_months(sysdate, -t.rn), 'yyyy-mm')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值