File 文件中包含数据的DB2 Select查询

File 文件中包含数据的DB2 Select查询,file,select,csv,db2,external,File,Select,Csv,Db2,External,假设我有一个csv文件(ids.csv),其ID如下 101,102,103......1MILLION 我想通过从where子句中的文件中读取ID来从表中选择数据 差不多 select * from employee where id in (<I wanted to read ids from external csv file>) 从id位于()的员工中选择* 这在任何数据库中都是可能的。我对db2感兴趣 由于sql中字符长度的限制,若我将所有这些ID都放在子句中,它将不

假设我有一个csv文件(ids.csv),其ID如下

101,102,103......1MILLION
我想通过从where子句中的文件中读取ID来从表中选择数据

差不多

select * from employee where id in (<I wanted to read ids from external csv file>)
从id位于()的员工中选择*
这在任何数据库中都是可能的。我对db2感兴趣


由于sql中字符长度的限制,若我将所有这些ID都放在子句中,它将不允许运行查询。现在,我正在将ID分块到较小的集合中,并运行查询。

使用命令将数据导入到表中

它将类似于:

db2 import from ids.csv of del create into id_table
您可以在上面的链接中阅读有关该命令的更多信息

完成后,只需简单地:

select * from employee where id in (select id from id_table)

根据您的平台,您可能会发现
内部联接
的性能更好-有迹象表明,较旧的版本可能会将
中的x变成相关子查询。否则,是的,将其导入临时表是一种方法。