提问人:MariaT 提问时间:11/13/2023 最后编辑:Thom AMariaT 更新时间:11/13/2023 访问量:63
尝试使用通过FORMAT函数创建的列作为WHERE子句中的日期
Trying to use column which is created with FORMAT function to be a date in WHERE clause
问:
我有一个表,其中一列是用FORMAT函数创建的。我有一个日期时间列,但我只想要日期,所以我做了什么:
FORMAT(hug2.Slots.DateStart, 'd', 'en-gb') AS 'DateStart'
我可以看到列类型是 nvarchar(4000)。 我正在尝试在WHERE子句中使用这一列,我所追求的是:
WHERE DateStart >= 01/09/2023
但我的结果包括 DateStart 小于指定日期 01/09/2023 的记录。
我试过写:
WHERE DateStart >= '01/09/2023'
WHERE DateStart >= 2023-09-01
WHERE DateStart >= 01-09-2023
WHERE DateStart > FORMAT(01/09/2023, 'd', 'en-gb')
整个代码块是:
SELECT r.Reference, r.flag_batch_ready,
CASE
WHEN p.Tenure IS NULL THEN r.Tenure
ELSE p.Tenure
END AS 'Property_Tenure',
mxspr.Status AS 'Max_Survey_Status',
CASE
WHEN r.GSEHousePlanUploaded IS NULL THEN 'No'
WHEN r.GSEHousePlanUploaded = 0 THEN 'No'
WHEN r.GSEHousePlanUploaded = 1 THEN 'Yes'
ELSE 'to check'
END AS 'HP_uploaded',
mxspr.DateStart
FROM hug2.ReferralUpdates r
LEFT JOIN hug2.max_survey_status_per_ref mxspr
ON r.Reference = mxspr.Reference
LEFT JOIN hug2.max_propertyId_per_ref p
ON r.Reference = p.Reference
WHERE mxspr.DateStart > '01/09/2023'
没有任何东西返回我想要的结果。
答: 暂无答案
上一个:T-SQL 旋转表
评论
yyyyMMdd
date
01-09-2023
int
-2031
'
WHERE CAST(myOriginalColum as Date) > CAST('20230901' as Date)
日期
,也许可以作为计算列。01/09/2023
2023-09-01
'10/10/2010'
'01/01/2020'
myOriginalColumn >= '20230902'
=
>=