Como criar consulta somente com o número total de registros

Pessoal vou tentar explicar o melhor possível estou querendo criar uma tela para visualizar a porcentagem de cada categoria tipo por exemplo existe o setor de construção e quero saber quais tarefas estão atrasadas, em andamento e conluídas, mas isso em porcentagem e o número total de tarefas de cada um.

Emmanuel bom dia,

Minha sugestão é que faças isso no teu SELECT, assim no SC só farias a formatação dos campos.

bom, para definir se estao vencidas vc teria que criar um campo data previsao de termino ou data inicial e informar que em dantos dias ela vai vencer, sobre a questao de pocentagem vc pode criar um campo label e dentro dele colocar uma varredura em toda a tabela principal e informar os dados referente a pocentagem q esse tipo de tarefa (tipo tarefa) representa no momantante.

Att Arquimedes

A tabela de exemplo abaixo foi montada com campos de identificação das tarefas e o status de cada uma delas.
Status=1 significa “Em andamento”
Status=2 significa “Atrasada”
Status=3 significa “Concluída”

CREATE TABLE `tarefas` (
  `id` int(11) NOT NULL,
  `status` varchar(1) COLLATE utf8_unicode_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

ALTER TABLE `tarefas`
  ADD PRIMARY KEY (`id`);

Inseri alguns registros para realizar a consulta teste:

INSERT INTO `tarefas` (`id`, `status`) VALUES
(1, '1'),(2, '1'),(3, '2'),(4, '1'),(5, '3'),(6, '3'),(7, '2'),(8, '2'),(9, '3'),(10, '1'),
(11, '1'),(12, '1'),(13, '2'),(14, '1'),(15, '3'),(16, '3'),(17, '2'),(18, '3'),(19, '1'),
(20, '2'),(21, '2'),(22, '1'),(23, '1'),(24, '3'),(25, '3'),(26, '1'),(27, '1'),(28, '1'),
(29, '2'),(30, '1'),(31, '3'),(32, '2'),(33, '1'),(34, '2'),(35, '1');

ALTER TABLE `tarefas`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=36;

E finalmente, a consulta para contabilizar as quantidades e porcentagens de cada status:

SELECT status, COUNT(status) AS quantidade, ROUND(COUNT(status)/(SELECT COUNT(*) FROM tarefas AS total)*100,2) AS porcentagem FROM tarefas GROUP BY status

Resultado da consulta: