SQL> select * from employee; 
【求助】sql中如何筛选掉重复的记录,并计数???          NAME                                        SALARY ---------- ---------------------------------------- ----------          1 sunshine                                      10000          1 sunshine                                      15000          2 semon                                         20000          2 semon                                         25000          3 xyz                                           30000          2 semon                                         20000 如何从上表中筛选掉重复的记录,并统计人数???
SQL>select nvl(count(NAME),0),nvl(sume(SALARY),0) from table GROUP BY NAME;要求:   一、统计人数为4人;
         二、工资总额为120000元;
这样的SQL如何写?

解决方案 »

  1.   


    SQL>select nvl(count(NAME),0),nvl(sume(SALARY),0) from table GROUP BY NAME; 用如上语句命令nvl(count(NAME)为什么统计出来的人数为6个人,而不是4个人;请指教???
      

  2.   


    SQL>select nvl(count(NAME),0),nvl(sume(SALARY),0) from table GROUP BY NAME; 用如上语句命令nvl(count(NAME)为什么统计出来的人数为6个人,而不是4个人;请指教???
      

  3.   

    ,,
    SQL>select nvl(count(NAME),0),nvl(sume(SALARY),0) from table GROUP BY NAME; 用如上语句命令nvl(count(NAME)为什么统计出来的人数为6个人,而不是4个人;请指教???'
      

  4.   

    试试这个
    select count(distinct NAME),sum(SALARY) from table; 
      

  5.   

    哦,明白了,DISTINCT函数能解决,
        
    COUNT(DISTINCT(NAME))
    XIEXIE 谢谢诶提醒!!