下面的查詢不返回任何值。在日期之間搜索時出現問題Microsoft Access
SELECT o.ea_guid as CLASSGUID, o.Object_Type as CLASSTYPE,
o.Name, type.Property, type.Value
FROM ((t_object as o
INNER JOIN t_objectproperties as location
ON o.Object_ID = location.Object_ID)
INNER JOIN t_objectproperties as type
ON o.Object_ID = type.Object_ID)
WHERE location.Property = 'Location'
AND location.Value = 'ND'
AND type.Property = 'FDate'
AND CDate(type.Value) >= CDate('21/02/2014')
AND CDate(type.Value) <= CDate('24/02/2014')
然而,如果i執行以下則返回一組結果的不需要的範圍
SELECT o.ea_guid as CLASSGUID, o.Object_Type as CLASSTYPE,
o.Name, type.Property, type.Value
FROM ((t_object as o
INNER JOIN t_objectproperties as location
ON o.Object_ID = location.Object_ID)
INNER JOIN t_objectproperties as type
ON o.Object_ID = type.Object_ID)
WHERE location.Property = 'Location'
AND location.Value = 'ND'
AND type.Property = 'FDate'
AND type.Value >= CDate('21/02/2014')
AND type.Value <= CDate('24/02/2014')
我也使用BETWEEN
嘗試和它的範圍之外的返回結果之間落下。
SELECT o.ea_guid as CLASSGUID, o.Object_Type as CLASSTYPE,
o.Name, type.Property, type.Value
FROM ((t_object as o
INNER JOIN t_objectproperties as location
ON o.Object_ID = location.Object_ID)
INNER JOIN t_objectproperties as type
ON o.Object_ID = type.Object_ID)
WHERE location.Property = 'Location'
AND location.Value = 'ND'
AND type.Property = 'FDate'
AND type.Value BETWEEN CDate('21/02/2014')
AND <= CDate('24/02/2014')
你有沒有嘗試在WHERE子句中沒有日期參數的情況下運行它,它起作用了嗎? –
@Newbie - 但是它返回整個結果集,而不是將它們限制在那些日期之間的結果集。 – PeanutsMonkey
我不認爲我會使用CDate ..我會使用'Format(YourDate,「ShortDate」)' –