Vários COUNTS no mesmo SELECT

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
  

Mensagemem Qui, 15 Jul 2004 8:36 am

Olá pessoal

Estou acostumado a fazer assim:
Código: Selecionar todos
SELECT COUNT(campo)
FROM tabela
WHERE etc.etc.etc


Tem como fazer vários counts de coisas diferentes num único SELECT?
tfg
Localização: Novo Hamburgo - RS

Mensagemem Qui, 15 Jul 2004 8:41 am

Pode sim!! Vamos testar no SCOTT:

Código: Selecionar todos
SQL> select empno, ename, job, sal, comm from emp;

     EMPNO ENAME      JOB              SAL       COMM
---------- ---------- --------- ---------- ----------
      7369 SMITE      CLERK            800
      7499 ALLEN      SALESMAN        1600        300
      7521 WARD       SALESMAN        1250        500
      7566 JONES      MANAGER         2975
      7654 MARTIN     SALESMAN        1250       1400
      7698 BLAKE      SALESMAN        2850
      7788 SCOTT      ANALYST         2000
      7844 TURNER     SALESMAN        1500          0
      7876 ADAMS      CLERK           1100
      7900 JAMES      CLERK            999
      7902 FORD       ANALYST         2000

11 rows selected.

SQL> select
  2    count( case when sal>=2000 then 1 end)        Salario_maior_3000,
  3    count( case when comm is not null then 1 end) Quantos_tem_comissao,
  4    count( case when job='SALESMAN' then 1 end)   Quantos_Salesman
  5  from emp
  6  /

SALARIO_MAIOR_3000 QUANTOS_TEM_COMISSAO QUANTOS_SALESMAN
------------------ -------------------- ----------------
                 4                    4                5

SQL>


:-o
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered



Voltar para SQL

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

cron