dheng06130 2019-07-18 18:45 采纳率: 0%
浏览 761

查询商品信息包含销量及销售总额信息?

需要关联订单明细表,现在是如果订单明细中没销量则商品信息都查不到

r_product_info 是商品信息表;
r_order_items 是订单明细表;
r_order_info 是订单表;    

因为要判断订单表是否是退单和删除状态,所以加了AND T7.order_status = 0    AND T7.disabled = 0     AND T6.disabled = 0 
因为这3个条件导致了查询不到商品信息,试过嵌入查询,但是速度很慢,小白一枚,钻了一下午,求大神帮忙分析一下,有没有好的解决思路 

SELECT
T1.pro_code 商品编码(主键),
T1.custom_pro_code 自编码,
T1.pro_name 商品名称,
T1.pinyin_code 助记码,
T1.bar_code 条形码,
T5.name 单位,
T1.retail_price 零售价,
T1.vip_price 会员价,
ROUND( T1.cost_price, 2 ) 成本价,
ROUND( IFNULL(( T1.retail_price - T1.cost_price ), 0 ), 2 ) 毛利额,
ROUND( IFNULL( T1.quantity, 0 ), 2 ) 总库存,
round ( SUM( T6.quantity ), 2 ) 销售总量,
round( SUM( T6.sold_price * T6.quantity ), 2 ) 销售总额,

T2.name 分类,
T3.name 品牌,
T4.name 供应商,
T1.spec 规格,
T1.art_no 款号,
T1.add_time 添加时间,
T1.last_time 修改时间
FROM
r_product_info AS T1
LEFT JOIN s_category_info T2 ON T1.category_id = T2.id
LEFT JOIN s_brand_info T3 ON T1.brand_id = T3.id
LEFT JOIN s_supplier_info T4 ON T1.supplier_id = T4.id
LEFT JOIN s_unit_info T5 ON T1.unit_id = T5.id
LEFT JOIN r_order_items T6 ON T6.pro_code = T1.pro_code
LEFT JOIN r_order_info T7 ON T7.order_sn = T6.order_sn
WHERE
T1.disabled = 0
AND T1.is_no_barcode = 2
AND T7.order_status = 0
AND T7.disabled = 0
AND T6.disabled = 0
GROUP BY
T1.pro_code
ORDER BY
T1.add_time DESC;

  • 写回答

2条回答 默认 最新

  • Json-Huang 2019-07-18 19:04
    关注

    计算和where条件涉及的字段加下索引,如cost_price,retail_price,quantity,is_no_barcode等这些字段。

    评论

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?