mysql查询时间太长,请诸位大神看看
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql查询时间太长,请诸位大神看看,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1301字,纯文字阅读大概需要2分钟。
内容图文
mysql查询时间太长,请各位大神看看SELECT a.`sku`,a.`stock_id`,a.`currency`,a.`account`,a.`charge`,a.`sale_country`,b.`stock_description`,c.`img_name`,d.`price`,d.`purchase_price`,d.`price`,d.`order_id`
FROM `Sku_Comparison` a
LEFT JOIN `Item_Codes` b ON a.`stock_id`=b.`stock_id`
LEFT JOIN (SELECT * FROM `Product_Img` GROUP BY `item_code`) as c ON a.`stock_id`=c.`item_code`
LEFT JOIN (SELECT * FROM (SELECT * FROM `Sale_Order_de` order by `id` desc ) t GROUP BY t.`sku`) d ON d.`sku`=a.`sku`
ORDER BY a.`id` DESC
查询时间要10秒左右,一个表数据最多的才几万条而以
字段类型除了数字类的,就是varchar
------解决思路----------------------
你应该优化你的 sql 语句,减少子查询(你用了3个临时表),而且索引很少用到,连接查询中 ON a.`stock_id`=c.`item_code`和ON d.`sku`=a.`sku`这个几个字段尽量添加索引
你试试这个:我也不知道返回的是不是你想要的数据
SELECT a.`sku`,a.`stock_id`,a.`currency`,a.`account`,a.`charge`,a.`sale_country`,b.`stock_description`,c.`img_name`,d.`price`,d.`purchase_price`,d.`price`,d.`order_id`
FROM `Sku_Comparison` a
LEFT JOIN `Item_Codes` b ON a.`stock_id`=b.`stock_id`
LEFT JOIN `Product_Img` as c ON a.`stock_id`=c.`item_code`
LEFT JOIN `Sale_Order_de` as d ON d.`sku`=a.`sku`
ORDER BY a.`id` DESC
------解决思路----------------------
没有表结构吗?
1.索引要加对。
2.尽量减少临时表。
内容总结
以上是互联网集市为您收集整理的mysql查询时间太长,请诸位大神看看全部内容,希望文章能够帮你解决mysql查询时间太长,请诸位大神看看所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。