如何优化此Union Query

时间:2013-01-10 06:07:49

标签: mysql select

我有以下查询

    SELECT `id`,'event' as type FROM `oc_event` where `Owner_id` = 1
    UNION ALL
    SELECT `id` ,'business' as type FROM `oc_business` where `Owner_id` = 1
    UNION ALL
    SELECT `id`, 'parts'  as type FROM `oc_listing` where `Owner_id` = 1

虽然,结果是准确的,但是当获取的行数大约为1K或更多时,它的安静性很慢。 是否有任何类型的mysql关键字来优化这个简单的查询,还是你的“UNION ALL”是正确的方法?

P.S:我正在使用PDO

1 个答案:

答案 0 :(得分:1)

如果要显示重复数据,那么最好使用union all 其他明智的使用联盟 找到一行时会停止 union_result会更快

使您的查询更好地在owner_id所有表

上创建索引