2011-12-29 40 views
2

我有一个1m +记录的数据集。 我需要输出查询到多个文件,具体取决于顺序。如何从查询结果中写入SQL中的多个文件?

实施例数据组:

ID  StoreName  StoreChain MoreData........ 
1  walmart NY  Walmart  ... 
2  Walmarty NJ Walmart  .... 
3  Target NY  Target  .... 
4  Costco NY  Costco  .... 

实例查询

Select StoreName, SotreChain,moreData order by StoreName 

我需要写为每个商店名称。 (4档)

Select StoreName, StoreChain,moreData order by StoreChain 

我需要编写每个链文件,(3档)

今天我使用CLR SP,它工作正常,但就是有点慢(1H为1000个文件200-400行)

我想知道是否有纯粹的T-SQL解决方案,如果需要的话可以使用命令shell。

它每次创建文件时都必须写入日志表。

回答

3

我相信这里最好的解决方案是使用SQL Server Integration Services(SSIS)包。您可以使用商业智能开发工作室(BIDS)进行设计。

使用此方法,您可以指定您的T-SQL作为查询目标的源文件和平面文件。

您甚至可以安排SSIS程序包按计划运行。

+0

这可以工作,但表格被创建,消耗和销毁,并且还有第二个表格确定女巫专栏的剂量文件包含。我知道没有在问题中指明这一点,所以我会在一天结束时接受你的回应。 – vaquito 2011-12-29 17:06:14

1

我同意鲨鱼。你应该尝试使用SSIS包来做这件事。这里是链接到一对夫妇教程:

当你知道如何使用工具,你将能够建立SSIS包导入从庞大的表中的数据在不到一分钟的时间内到另一个。如果你打算处理大量的数据,我绝对推荐这个选项。

相关问题