delete 大类名称 from 表名
delete from 表名 where 面包<>50 and 面包<>90

解决方案 »

  1.   

    select 销售日期  ,分店编号,
    熟食=CASE WHEN 大类编号='01' THEN 各类销售金额  ELSE 0 END,
    面包=CASE WHEN 大类编号='02' THEN 各类销售金额  ELSE 0 END
    FROM 表名以上是大意,你要根据实际作改动
      

  2.   

    SELECT 销售日期,分店编号, 
        SUM(CASE 各类销售金额  WHEN 熟食 THEN 各类销售金额  ELSE 0 END) AS 熟食,
        SUM(CASE 各类销售金额  WHEN 面包 THEN 各类销售金额  ELSE 0 END) AS 面包,
        SUM(CASE 各类销售金额  WHEN 水产 THEN 各类销售金额  ELSE 0 END) AS 水产
    FROM 表名
    GROUP BY 销售日期,分店编号
    GO
      

  3.   

    SELECT 销售日期,分店编号,
    MAX(CASE 大类名称 WHEN 熟食 THEN 各类销售金额 end) as 熟食,
    MAX(CASE 大类名称 WHEN 面包 THEN 各类销售金额 end) as 面包
    FROM 表名
    where 分店编号='01'
    group by 销售日期,分店编号
      

  4.   

    如果是动态的
    可以用
    exec @sql
      

  5.   

    SELECT 销售日期,分店编号, 
        SUM(CASE ltrim(大类名称)  WHEN '熟食' THEN 各类销售金额  ELSE 0 END) AS 熟食,
        SUM(CASE ltrim(大类名称)  WHEN '面包' THEN 各类销售金额  ELSE 0 END) AS 面包,
        SUM(CASE ltrim(大类名称)  WHEN '水产' THEN 各类销售金额  ELSE 0 END) AS 水产
    FROM storesales
    GROUP BY 销售日期,分店编号
    GO
    result:销售日期    分店编号    熟食     面包    水产                    2002-11-1    1           200      50      80
    2002-11-2    1           300      90      80
    2002-11-1    2           70       50      80
    2002-11-2    2           70       50      80符合你的要求么?