日期:2014-05-16  浏览次数:20500 次

生产日报、周报、月报的SQL
生产日报表:
   生产物品名   生产工序名称 加工人姓名  加工日期      加工时间段    加工数量   破损数  个人累计数  gongxubianhao
      cpbhao          ssbumen      ygsn            caozhuorq
       A           打粉            XM1     03-27       8:00-9:00     100        2           200  
       A           打粉            XM1     03-27       9:00-12:00    300        2           500
       B           筛选            XM2     04-27        8:00-9:00    100        2           200 

想得到1、每天、每周、每月的每道工序的加工情况汇总表:A产品所有工序  共加工多少  共破损数   共个累计数
      2、 按人员每天、每周、每月的工作情况汇总表
 
Select cpbhao,ssbumen, caozhuorq,月数,Sum(dangricl) as 总加工数量,Sum(posuns) as 破损数 from (Select cpbhao,ssbumen,  month(caozhuorq) as 月数,dangric,posuns from scrb) Group By ssbumen,月数
报错 关键字 'Group' 附近有语法错误   我没有少什么列名?我错在哪里?

我用下面语句:
Select cpbhao,ssbumen, caozhuorq,Sum(dangricl) as 总加工数量,Sum(posuns) as 总破损数 ,sum( leijs), gongxubianhao,sum( zxljs) from scrb Group By cpbhao,ssbumen,caozhuorq,leijs, gongxubianhao,zxljs order by cpbhao,ssbumen,caozhuorq
竞然能查出了2条 gongxubianhao 列(是一个字符型)的值不同,而其他的列都是相同的,我不是用了按日期分组吗?

高手能给个指点一下吗?


------解决方案--------------------
SELECT
    cpbhao, ssbumen, caozhuorq, 月数, SUM(dangricl) AS 总加工数量, SUM(posuns) AS 破损数
FROM
    (SELECT
        cpbhao ,
        ssbumen ,
        MONTH(caozhuorq) AS 月数 ,
        dangric ,
        posuns
     FROM
        scrb) AS t  --这里加一别名
GROUP BY
    ssbumen, 月数

------解决方案--------------------
convert(varchar(7),caozhuorq,120)

------解决方案--------------------
引用:
百度也没有找到SQL转化为第几周的,有高手愿意出手吗?
本年第多少周=datename(