【发布时间】:2017-07-07 11:21:23
【问题描述】:
我有一个巨大的表,我想在其上运行带有 or 条件的查询
SELECT id, upload_key
FROM product_data
WHERE (status = 0 or updated = 0) and uploaded_on is NULL;
该表现在有超过 5000 万条记录,需要几分钟才能执行。我尝试在键 status、updated 和 upload_on 上创建复合索引(与查询的顺序相同),但事实证明,查询没有在两个不同的列上使用带有 OR 的复合索引。
有没有办法创建索引来优化查询,或者我应该将uploaded_on 作为第一个where 子句并在其上创建一个单列索引?
【问题讨论】: