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

  • 相关阅读:
    C++ 类 构造函数 constructor
    数据库——关系代数
    海明码
    C++ this指针
    C++ 类的定义与实现
    C++ 函数 内联函数
    C++ 函数 函数的重载 有默认参数的函数
    2017年第八届蓝桥杯【C++省赛B组】
    2018年第九届蓝桥杯【C++省赛B组】
    C++ 函数 参数传递方式
  • 原文地址:https://www.cnblogs.com/chengulv/p/796611.html
Copyright © 2011-2022 走看看