簡體   English   中英

如何在SQL中添加時間?

[英]How do I add Time in SQL?

所以我的數據是1:30 PM. 我希望在用戶選擇時間時有一個數據,我希望它添加1小時30分鍾 ,然后將數據設置為1:30 PM - 3:00 PM 我一直在尋找答案並嘗試了一些解決方法,但我無法得到它。 BTW我的Time的數據類型是Varchar ,因為當我嘗試使用Time數據類型時,我遇到了從C#插入到SQL的一些問題

用sql-server 2008測試

 declare @t varchar(25)

    set @t = '1:30 PM'

    --conert a varchar to time
    select CONVERT(time, @t)

    --if you want to add 90 minutes to it

    select DATEADD(minute,90,CONVERT(time, @t))
--this does a few things
-- 1) converts the time stored as a varchar to the time datatype
-- 2) adds 90 minutes
-- 3) converts the time result back to the varchar datatype

select convert(varchar(10), dateadd(mi, 90, convert(time, '1:30 PM')), 100)


--this will show a final result of "3:00PM"

編輯:

以下查詢還將返回一個varchar ,其間距介於AM / PM之前。

select format(dateadd(mi, 90, convert(datetime, '1:30 PM')), 'h:mm tt')

'h:mm tt'寫有一個“h”,因此它將顯示為“3:00 PM”,而不是“03:00 PM”。

使用替換:

這將是我如何使用replace來實現“下午3:00”的目標

select replace(replace(convert(varchar(10), dateadd(mi, 90, convert(time, '1:30 PM')), 100), 'P', ' P'), 'A', ' A')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM