簡體   English   中英

SQL Server中的日期轉換

[英]Conversion of Date in SQL Server

我試圖在CreatedDate的基礎上進行比較,但這給了我一個錯誤

varchar數據類型到datetime數據類型的轉換導致值超出范圍

這是我的查詢,因為@startdate和@endDate是我的存儲過程參數。

declare @startDate as varchar(100) = null
declare @endDate as varchar(100) = null
set @startDate = '01/11/2016'
set @endDate = '30/11/2016'

SELECT CreatedDate FROM Table1 
WHERE HCCreatedDate BETWEEN 
CONVERT(Datetime, ISNULL(@startDate,''), 103)
    AND CONVERT(Datetime, ISNULL(@endDate,''), 103) 

請如下轉換HCCreatedDate列

declare @startDate as varchar(100) = null
declare @endDate as varchar(100) = null
set @startDate = '01/11/2016'
set @endDate = '30/11/2016'

SELECT 
    CreatedDate 
FROM 
    Table1 
WHERE 
    CONVERT(DATETIME,HCCreatedDate,103) BETWEEN CONVERT(DATETIME, ISNULL(@startDate,''), 103) AND CONVERT(DATETIME, ISNULL(@endDate,''), 103) 

還將您的列轉換為Datetime。 然后再試一次

declare @startDate as varchar(100) = null
declare @endDate as varchar(100) = null
set @startDate = '01/11/2016'
set @endDate = '30/11/2016'

SELECT CreatedDate FROM Table1 
WHERE CONVERT(DATETIME, HCCreatedDate), 103)BETWEEN 
CONVERT(DATETIME, ISNULL(@startDate,''), 103)
    AND CONVERT(DATETIME, ISNULL(@endDate,''), 103) 

暫無
暫無

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

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