SQL 1000+值和VBA
我有300000个part_id要查询,因为SQL最多只能接受我在上面的SQL中创建的With and Union子句中的1000个值。是否有方法编写VBA以将select语句包装在excel中的零件id周围?我有excel中的零件Id列表。我愿意接受任何不会强迫我复制粘贴300次的建议。您可以对每个部分使用excel公式。 这是第一行的示例:SQL 1000+值和VBA,sql,excel,vba,oracle,Sql,Excel,Vba,Oracle,我有300000个part_id要查询,因为SQL最多只能接受我在上面的SQL中创建的With and Union子句中的1000个值。是否有方法编写VBA以将select语句包装在excel中的零件id周围?我有excel中的零件Id列表。我愿意接受任何不会强迫我复制粘贴300次的建议。您可以对每个部分使用excel公式。 这是第一行的示例: WITH part_set AS ( select p.part_id from parts p whe
WITH
part_set
AS
(
select p.part_id from parts p where p.part_id in (1231,1235,67567,35,373,1000)
Union
select p.part_id from parts p where p.part_id in (12345,1234,123,123455,1000)
创建第一个公式后,可以对所有行使用自动填充功能。
之后,您将收到一个所有选定值的列表是否有原因使您无法将Excel中的值加载到Oracle中的表(可能是临时表)中,然后直接连接到该表或在in子句中使用该表?这将比以编程方式组装一个具有300000个文本部分id值的语句容易得多。
="select p.part_id from parts p where p.part_id in (" & $A1 & "," & $B1 & "," & $C1 & "," & $D1 & "," & $E1 & "," & $F1 & ")" & CHAR(10) & " union"