客户端

MySQL查询中使用union的技巧和注意事项

所在版块: 数据与机器学习 2017-11-08 17:20 [复制链接] 查看: 2318|回复: 0
把一张表的一条记录(通过不同的条件约束)变成两条记录时,一般会使用union来实现。但是需要注意的是,要给拆出来的两张表第一个字段附上不重复的ID,不然就会踩到坑。

SELECT sum(m_fetch_num), sum(m_return_num) FROM
(
        (
                SELECT concat('0_',order_id) as order_id,
                a.order_fetch_time,a.order_fetch_distanc,
                a.m_fetch_num,0 as m_return_num
                FROM dwm_flash_order_fetch_return as a
                WHERE m_fetch_num>0
        )
        UNION
        (
                SELECT concat('1_',order_id) as order_id,
                0 as order_fetch_time,0 as order_fetch_distanc,
                0 as m_fetch_num,a.m_return_num
                FROM dwm_flash_order_fetch_return as a
                WHERE m_return_num>0
        )
) x




分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码关注微信公众号

QQ|Archiver|手机版|小黑屋|mwt-design ( 沪ICP备12041170号-1

GMT+8, 2024-11-22 12:43 , Processed in 0.063482 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回列表