zoukankan      html  css  js  c++  java
  • group by 使用


    商品库存表: 仓库编号   商品编号   数量
                CangKuID  ProductID   Quantity
                 1          3          50
                 1          3          100
                 2          4          60
                 2          4          150

    商品表:     商品编号    商品名称   单位
                  3           电脑      台
                  4           电视      台

    现在想实现显示成:

         商品名称   单位  数量
           电脑      台    150
           电视      台    210







    create table 商品库存表(CangKuID int,ProductID int,Quantity int)
    insert into 商品库存表
    select 1,3,50
    union all select 1,3,100
    union all select 2,4,60
    union all select 2,4,150

    create table 商品表(商品编号 int,商品名称 varchar(20),单位 varchar(6))
    insert into 商品表
    select 3,'电脑','台'
    union all select 4,'电视','台'

    select 商品名称,
    单位,
    商品库存表.Quantity as '数量'
    from 商品表
    left join (select ProductID,sum(isnull(Quantity,0)) as Quantity from 商品库存表 group by ProductID) 商品库存表 on 商品库存表.ProductID=商品表.商品编号
    /*
    商品名称                 单位     数量         
    -------------------- ------ -----------
    电脑                   台      150
    电视                   台      210

    (所影响的行数为 2 行)
    */





    select a.productname,a.unit,b.Quantity
    from Product a  -- NO1
    right join
    (select ProductID,sum(isnull(Quantity,0)) as Quantity from CangKuStock group by ProductID) b  -- NO3
    on b.ProductID=a.Productid

  • 相关阅读:
    Android SharedPreferences 简单使用
    Android Broadcast广播
    Android Service 的生命周期
    Android RecyclerView的使用
    Android ListView addHeaderView()、addFooterView()和变更列表
    Android ListView的缓存机制
    Android ViewPager + Fragment的实现与Fragment生命周期管理
    Android 触摸事件的传递过程
    Java 泛型及相关使用
    android 常用View的一些注意点(CheckedTextView)
  • 原文地址:https://www.cnblogs.com/chengulv/p/796611.html
Copyright © 2011-2022 走看看