--刪除表 若是已經存在
USE master
--檢查是否已經存在一個表,若是有就刪除
IF(EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = '#Op_Table;'))
DROP table #Op_Table;
GO
--檢查是否已經存在一個臨時表,若是有就刪除
IF(OBJECT_ID(N'tempdb..#Op_Table')) is not null
DROP TABLE #Op_Table
GO
----檢查是否已經存在一個臨時表,若是有就刪除
--IF(EXISTS(SELECT * FROM tempdb.dbo.sysobjects WHERE id = object_id(N'tempdb..#Op_Table')))
-- DROP TABLE #Op_Table
--GO
--建立表
CREATE TABLE #Op_Table
(
ID int identity(1,1) Primary Key,
DateTime_Loc datetimeoffset(7) null,
DateTime_UTC datetimeoffset(7) null,
DateTimeStr nvarchar(23) null,
DateKey int null
)
INSERT INTO #Op_Table(DateTime_Loc,DateTime_UTC,DateTimeStr,DateKey)
VALUES
(
--獲取本地時間 datetimeoffset 類型
SYSDATETIMEOFFSET(),
--根據本地時間獲取UTC時間
SWITCHOFFSET(SYSDATETIMEOFFSET(),'+00:00'),
--本地時間轉字符串, datetimeoffset-> nvarchar
CAST(SYSDATETIMEOFFSET() AS nvarchar(23)),
--獲取時間字符串的一部分 轉成int
PARSE(
REPLACE(
SUBSTRING(CAST(SYSDATETIMEOFFSET() AS nvarchar(23)),0,11),
'-',
'')
AS int
)
),
(SYSDATETIMEOFFSET(),null,null,null),
(null,null,null,null)
SELECT *
FROM #Op_Table
--ISNULL操做: 若是列的值爲NULL 則默認爲本地時間
WHERE ISNULL(SWITCHOFFSET(DateTime_Loc,'+00:00'),SYSDATETIMEOFFSET()) = ISNULL(DateTime_UTC,SYSDATETIMEOFFSET())
ide