MySQL从select语句的文件中读取参数

时间:2013-05-28 18:08:53

标签: mysql mysqli

我有一个选择查询,如下所示:

从abc中选择*,其中id为IN($ list);

变量$ list的长度问题,它可能有4000-5000个字符的长度,因此实际执行的查询的长度增加而且变得非常慢。

是否有方法将$ list的值存储在文件中并要求mysql从该文件中读取它,类似于LOAD DATA INFILE'file_name'以插入表

1 个答案:

答案 0 :(得分:4)

是的,你可以(TM)!

  • 第一步:使用CREATE TEMPORARY TABLE temp (id ... PRIMARY KEY)LOAD DATA INFILE ...创建并填充包含值列表的临时表
  • 第二步:运行SELECT abc.id FROM abc INNER JOIN temp ON abc.id=temp.id

我有强烈的印象,如果您使用相同的值列表很多次,这只会作为胜利结果。