【发布时间】:2017-09-20 21:10:37
【问题描述】:
我在 Access 中有一个 SQL Server 链接表,我正在尝试查询以从某个日期或数据范围中提取(例如,< 01/31/2017)。我在 Access 设计模式下尝试了以下条件:< #01/31/2017#,但比较不正确。
SQL server 表中的字段是datetime 数据类型,我在Access 设计模式的属性中将其格式化为Short Date。
SELECT dbo_LicensesLiveViewWithRevenue.BAN,
dbo_LicensesLiveViewWithRevenue.PTN,
dbo_LicensesLiveViewWithRevenue.SOC,
dbo_LicensesLiveViewWithRevenue.LicenseCreatedOn,
Format([DeactivationDate],"Short Date") AS DeactOn,
dbo_LicensesLiveViewWithRevenue.RetailPrice,
dbo_LicensesLiveViewWithRevenue.WholeSalePrice,
dbo_LicensesLiveViewWithRevenue.AccountID
FROM dbo_LicensesLiveViewWithRevenue
WHERE (((dbo_LicensesLiveViewWithRevenue.LicenseCreatedOn)< #2017/01/31#)) ORDER BY dbo_LicensesLiveViewWithRevenue.LicenseCreatedOn;
我还尝试了将日期作为表单参数传递的查询,但没有运气。
SELECT dbo_LicensesLiveViewWithRevenue.BAN,
dbo_LicensesLiveViewWithRevenue.PTN,
dbo_LicensesLiveViewWithRevenue.SOC,
dbo_LicensesLiveViewWithRevenue.LicenseCreatedOn,
Format([DeactivationDate],"Short Date") AS DeactOn,
dbo_LicensesLiveViewWithRevenue.RetailPrice,
dbo_LicensesLiveViewWithRevenue.WholeSalePrice,
dbo_LicensesLiveViewWithRevenue.AccountID
FROM dbo_LicensesLiveViewWithRevenue
WHERE (((dbo_LicensesLiveViewWithRevenue.LicenseCreatedOn)<[Forms]![MainForm]![EndDate]));
结果:
当我直接在 SQL Server 中运行查询时,会为我提供具有正确日期的正确记录(在 SQL 中,日期为
【问题讨论】:
-
请显示不想要的结果,因为比较不正确并且没有运气对我们没有帮助。 我做错了什么? ...我们甚至不知道出了什么问题。
-
我添加了更多信息。
-
试试
#01/31/2017#或CDate("2017-01-31") -
其他事情正在发生。即使是第一个示例中的相同日期 - 2015 年 12 月 8 日 - 也不会一起排序。所以,不知何故,你也在其他一些领域进行排序。 进一步,字段
DeactOn不应该为空。
标签: sql sql-server ms-access date-comparison linked-tables