我经常收到基于 Excel 电子表格中发送给我的数据查询 SQL Server 数据库的请求。
我正在寻找一种比当前设置更有效的方式来完成这些类型的请求:
目前为了完成请求,我执行以下操作:
复制包含最终将放在 WHERE 子句中的数据的 Excel 列。
仅将数据作为文本粘贴到 Microsoft Word 中。
查找每个段落标记并将其替换为 ', '
然后用括号将整个子句括起来,进入一个 IN 子句。
有没有人建议以更有效的方式完成相同的任务?
这里有几种方法:
直接查询excel电子表格:
SELECT *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\excelfile.xls', [Sheet1$])
使用 excel 格式化数据:
在下一个空列= A1 & ","
中,然后向下复制,或="'"&A1&"',"
您可以将 Excell 保存为 CSV 逗号分隔文件并从那里开始,但如果这是常规操作,我可能会设置一个 SSIS 进程来为您完成这一切