俱乐部几个类似的重复mysql SELECT语句

时间:2015-06-20 04:17:57

标签: php mysql database

我想从表中获取分类详细信息。我有一个csv格式的 classified_ids 。我将它从CSV中分离出来并为每个 classified_id 进行独立查询。

我现在正在做的是:

SELECT * from classified WHERE classified_id = 501;

SELECT * from classified WHERE classified_id = 545;

SELECT * from classified WHERE classified_id = 578;

.....等等......执行它们中的每一个。

我觉得这对于大量的ID都是低效的。是否有更好的方法将所有这些陈述合并为一个或以某种方式使其更有效率?

[我正在使用PHP mysql *(我知道它已被弃用,它是一个旧项目)]

提前致谢。

3 个答案:

答案 0 :(得分:0)

我认为这些SQL对您有用。请检查

 SELECT * FROM classified WHERE classified_id IN 
(SELECT DISTINCT classified_id FROM classified)

谢谢。

答案 1 :(得分:0)

你的意思是

SELECT * from classified WHERE classified_id in (545, 123, 234);

答案 2 :(得分:0)

而是创建一个classified_id喜欢的数组,

$classified_ids = [545, 123, 234];

使用mysql IN查询,

$query = "SELECT * FROM classified WHERE classified_id IN ( {implode(',', $classified_ids)} )";

将查询,

$query = "SELECT * FROM classified WHERE classified_id IN ( 545, 123, 234 )";