【问题标题】:update query not performing well when using the joins from multiple tables in mysql使用 mysql 中多个表的连接时更新查询性能不佳
【发布时间】:2015-04-06 05:28:18
【问题描述】:
我一直在尝试使用如下连接更新两个表中的单个列,
update skus sk inner join products ss on (sk.id = ss.sk_number) set sk.style_id = (select id from categories where style_number = ss.st_number)
我也为必填字段应用了索引,但这里 skus 表 sk.id 是字符串类型的主键。
products 表:sk_number 和 st_number 字段也应用了索引。
我不知道那个查询有什么问题?分享你的想法
【问题讨论】:
标签:
mysql
ruby-on-rails
join
query-optimization
【解决方案1】:
试试这个...
示例:
UPDATE A
SET ControllingSalesRep = RA.SalesRepCode
from DHE.dbo.tblAccounts A
INNER JOIN DHE_Import.dbo.tblSalesRepsAccountsLink RA
ON A.AccountCode = RA.AccountCode
您的查询:
update sk set sk.style_id = (select id from categories where style_number = ss.st_number) from skus sk inner join products ss on (sk.id = ss.sk_number)
【解决方案2】:
试试这个...
update sk set sk.style_id = ca.id from categories ca inner join products ss on ca.style_number = ss.st_number inner join skus sk on (sk.id = ss.sk_number)