我使用以下查询:
update a left join b on a.type = b.type and a.name like b.pattern set a.b_id = b.id, a.flags = 1 where a.flags = 0;
b.type 和 b.name 被定义为索引,这意味着 MySQL 尝试匹配这个条件:
order by b.type, b.pattern
是否可以仅将索引用于实际匹配,而不用于 order by-statement?
以供参考:
一个以上的 b 记录可以匹配一个 a 记录,但只能使用具有最低 id 的 b 记录。
问题是,MySQL 不支持在使用连接的更新中设置用户定义的顺序语句。如果支持此功能,我可以轻松添加到最后:
按 b.id 订购
是否可以在不使用选择子查询(作为连接)的情况下解决问题,以实现具有多个表的更新中的字段集顺序?