我得到了一个 csv 中带有数千个 ID 的 csv,需要使用这些 ID 进行查询



过去,当我得到一个csv时,只有几千行,所以我只会创建一个临时表,然后将所需的值插入到表中。 这里的问题是,这次我得到了一个超过 80,000 行的 csv,并且允许插入 1000 行值的最大数量。 在过去,对于几千个,我只会这样做 3 或 4 次,然后将它们合并以创建一个主临时表。 如何将这些 csv ID 导入我的 SQL 服务器? 为了清楚起见,我也包括了我之前正在做的事情。 另外要注意的是,我的访问权限有限。 谢谢!

编辑:受限访问权限意味着我没有使用批量加载语句的权限。 我希望有一个围绕它。 如果没有,我将不得不解释情况。

CREATE TABLE ##Test(ID BIGINT);
INSERT INTO ##Test
VALUES
(21477217322),
(21479276022),
(21478037922)
;

您不必使用表值构造函数。您可以改用 UNION ALL,然后没有限制。只需让您的csv为您构建一个看起来像这样的字符串即可。

SELECT 21477217322 UNION ALL
SELECT 21479276022 UNION ALL
SELECT 21478037922

或者更简单的解决方案是使用数据导入工具,而不是手动执行此操作。

最新更新