仅将特定日期内的数据从SQL导入Excel

时间:2015-07-30 12:50:18

标签: sql-server excel

使用Excel 2013,我已连接到CRM程序中的SQL数据库。我正在运行活动报告,我真的只需要过去90天的数据。有没有办法可以将导入Excel工作表的SQL记录数量限制为过去90天内的数据?我将此数据用于自动刷新仪表板,每次刷新需要2-3分钟,因为有超过71,000行。

感谢您的帮助。

4 个答案:

答案 0 :(得分:1)

只有在SQL记录包含日期字段时才能执行此操作。

更改您的查询以在该日期添加限制性条款:

select your_data 
from your_tables 
where
your_existing_conditions 
and date_field >= getdate() - 90
;

答案 1 :(得分:1)

当您连接到数据源时,在选择“数据”显示在“导入数据”对话框中的位置之前,请单击“属性”按钮。

enter image description here

转到“定义”选项卡,将“命令类型”从“表”更改为“SQL”。然后,您可以在过滤结果的位置输入SQL查询(假设您具有正确的权限)。

如果您没有权限,则需要让您的数据库团队创建一个您拉入的视图,而不是为您进行过滤的表。

答案 2 :(得分:0)

您使用的是什么版本的Excel 2013?如果它是包含PowerPivot的版本,我建议您使用它来连接到数据库,因为它在处理大量行时要好得多,您不必担心长时间限制行来。

或者,在数据菜单中,转到“来自其他来源”'并选择“来自Microsoft Query'这将为您提供在您所接受的数据上设置条件的选项。如果您不熟悉SQL,那么这将为您处理基础WHERE条件。

答案 3 :(得分:0)

谢谢大家!根据这里的反馈,我通过编写我的第一个SQL查询解决了我的问题(不要笑)!通过转到“连接属性”中的“定义”选项卡并将“命令类型”更改为“SQL”,我编写了一个非常简单的代码,添加了日期范围。再次感谢。