解决方案 »

  1.   

    好吧,我好像自己解决了,把group放后面,还有个问题,可以在这条语句前面加个select语句将符合的bh调出来使用吧
      

  2.   

    select 后的列,如果不是聚合列,则必须放在 group by 列表中。
      

  3.   

    1、group by是出现在内容聚合的时候,没有sum,count之类的聚合就不用group by
    2、想引用查询后的bh,再嵌套一层
      

  4.   

    还有当店子有余额在100元以下的会员时,计数该店子每天将这些低于100元会员提升的数量的个数(KHS1)和金额(JE1)这个意思是把余额在100以下的,统计个数么?
      

  5.   


    是用select(.....)where in
    (sekect 
    .
    .
    .
    .)
    这样么,引用的数据放里面一层?
      

  6.   

    select count(1) ,sum(je1-je)
    (select je,lead(je) over(partition by KHS order by sj) je1
    from dz
    where ...)
    where je1 > '100' and je < '100'
    ;
      

  7.   

    括号里面的where 后面的条件你自己加上去,这个就是你要的 金额小于100,过后又充钱进去了金额大于100了的,然后算出条目数和充值金额。
      

  8.   


    第一个select都没有from是加在where后面么
      

  9.   

    select count(1) ,sum(je1-je) from
    (select je,lead(je) over(partition by KHS order by sj) je1
    from dz
    where ...) t
    where je1 > '100' and je < '100'
    ;
      

  10.   


    还有个问题,比如select idh,je,sj from  dz where( ....判断条件)., select newidh from dz where(.....判断条件),就是第一个select语句中的idh要控制在第二个select范围内,也就是说,比如第二个select输出的五个值,第一个select中的idh必须输出在这个5个中,怎么写这个嵌套,两个select语句我会写,看书上用where idh in我不怎么会
      

  11.   

    select idh,je,sj from  dz where  idh in ( select idh from dz where ...)
      

  12.   


    那第一个select中的where判断语句放哪
      

  13.   

    where 后面啊,你不会where  idh in ( select idh from dz where ...) and sj>'...'.......  
      

  14.   


    还有麻烦您一下,在这个中怎么以idh(店名)为行,sj(时间)为列对idh下面的xks(新开数)0和xkje(新开金额)进行计数,xks和xkje在表中没有