我有一个1m +记录的数据集。 我需要根据订单输出查询到多个文件。
示例数据集:
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
我需要为每个Chain编写一个文件,(3个文件)
今天我使用的是CLR SP,它工作正常,但有点慢(1000个文件,每个200-400行1小时)
我想知道是否有纯T-SQL解决方案,如果需要它可以使用命令shell。
每次创建文件时都必须写入日志表。
答案 0 :(得分:3)
我相信这里最好的解决方案是使用SQL Server Integration Services(SSIS)包。您可以使用Business Intelligence Development Studio(BIDS)进行设计。
使用此功能,您可以将T-SQL指定为源文件和平面文件作为查询的目的地。
您甚至可以安排SSIS包定期运行。
答案 1 :(得分:1)
我同意Shark的看法。您应该尝试使用SSIS包执行此操作。以下是几个教程的链接:
当您弄清楚如何使用该工具时,您将能够设置ssis包,以便在不到一分钟的时间内将数据从大表导入到另一个表。如果您打算处理大量数据,我肯定会推荐这个选项