Usuário com melhor resposta
Count em 2 campos...

Pergunta
-
Olá amigos,
Tenho uma tabela de convidados com um flag informando se o convidado chegou ou não, queria fazer uma query e retornar 2 valores, o total de convidados e o total que já chegou, fiz algo parecido abaixo, que deu certo, queria saber se está certo ou se tem alguma query melhor:
SELECT COUNT(id_convidado) AS Total,
(SELECT COUNT(id_convidado) AS Chegou
FROM convidados
WHERE chegou = '1') AS chegou
FROM convidadosResultado:
Total Chegou1000 49
Obrigado!!
Respostas
-
Tem uma maneira que será muito mais rapida.
SELECT
B.ROWCNT AS TOTAL, COUNT(ID_CONVIDADO) AS CHEGOUFROM
CONVIDADOSINNER
JOIN SYSINDEXES B ON OBJECT_ID('CONVIDADOS') = B.IDWHERE
CHEGOU = '1'AND
B.INDID < 2GROUP
BY B.ROWCNTVocê pode pegar a quantidade de registros da tabela Convidados na coluna RowCnt da tabela SysIndexes.
Todas as Respostas
-
-
-
-
Tem uma maneira que será muito mais rapida.
SELECT
B.ROWCNT AS TOTAL, COUNT(ID_CONVIDADO) AS CHEGOUFROM
CONVIDADOSINNER
JOIN SYSINDEXES B ON OBJECT_ID('CONVIDADOS') = B.IDWHERE
CHEGOU = '1'AND
B.INDID < 2GROUP
BY B.ROWCNTVocê pode pegar a quantidade de registros da tabela Convidados na coluna RowCnt da tabela SysIndexes.