[英]SQL: how to compare date values within nvarchar datatypes
我如何建立這樣的查詢語句:
select * from men where Tdate between 01/01/01 and 02/02/02
Tdate
列的類型為nvarchar
我正在使用SQL Server Compact Edition(sqlCE)
謝謝
SELECT
*
FROM
men
WHERE
CONVERT(DATETIME, Tdate) BETWEEN '01/01/01' and '02/02/02'
它取決於日期格式和當前的DATEFORMAT
,以確定CONVERT()
是否起作用。
建議將列轉換為實際的DATETIME數據類型。
您可能正在nvarchar
列的WHERE子句中尋找CAST
或CONVERT
語句。
SELECT *
FROM Men
WHERE CAST(Tdate AS Datetime)
BETWEEN '01/01/09' and '02/02/09'
這是概念證明:
declare @sample table
(
TDate nvarchar(100)
)
Insert into @sample (TDate ) --yes, this INSERT work on SQL 2008 only :)
Values ('jan 1 2009'),('jan 10 2009'), ('feb 8 2009'),('feb 12 2009')
SELECT *
FROM @sample
WHERE CAST(Tdate AS Datetime) BETWEEN '01/01/09' AND '02/10/09'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.