在 SQL 服务器中按 Access 2016 查询中的文本过滤
Filter by text in Access 2016 Query in SQL Server
我有 3,521,117 行文本格式的日期数据(例如 2016-03-04)。
我想在访问中进行查询,但只使用 2017 年及之后的信息以减少数据量。
我试过这个 sql 代码:
SELECT [Ventas].[Fecha]
FROM [Ventas]
WHERE [Ventas].[Fecha] LIKE '%2017%' OR [Ventas].[Fecha] LIKE '%2018%'
但我没有得到任何信息,只有空白 sheet
我唯一能够完成的工作是:
SELECT [Ventas].[Fecha]
FROM [Ventas]
WHERE [Ventas].[Fecha] LIKE '2017-01-01' OR [Ventas].[Fecha] LIKE '2017-01-02'
但这可能不是一年 365 天的最佳输入方式
有没有什么方法可以删除2014年到2016年的数据,或者只获取2017年及之后的查询。
我不能使用 betweendates 因为它的文本不能从源代码转换它 table。
我不确定访问权限,但这是您标记的 sql 服务器。
SELECT [Tabla: Ventas].[Fecha]
FROM [Tabla: Ventas]
WHERE [Tabla: Ventas].[Fecha]>='20170101'
如果 fecha 不是日期,则将其转换为日期
cast(fecha as date) >= '20170101'
我有 3,521,117 行文本格式的日期数据(例如 2016-03-04)。 我想在访问中进行查询,但只使用 2017 年及之后的信息以减少数据量。
我试过这个 sql 代码:
SELECT [Ventas].[Fecha]
FROM [Ventas]
WHERE [Ventas].[Fecha] LIKE '%2017%' OR [Ventas].[Fecha] LIKE '%2018%'
但我没有得到任何信息,只有空白 sheet
我唯一能够完成的工作是:
SELECT [Ventas].[Fecha]
FROM [Ventas]
WHERE [Ventas].[Fecha] LIKE '2017-01-01' OR [Ventas].[Fecha] LIKE '2017-01-02'
但这可能不是一年 365 天的最佳输入方式
有没有什么方法可以删除2014年到2016年的数据,或者只获取2017年及之后的查询。
我不能使用 betweendates 因为它的文本不能从源代码转换它 table。
我不确定访问权限,但这是您标记的 sql 服务器。
SELECT [Tabla: Ventas].[Fecha]
FROM [Tabla: Ventas]
WHERE [Tabla: Ventas].[Fecha]>='20170101'
如果 fecha 不是日期,则将其转换为日期
cast(fecha as date) >= '20170101'