Listar com excessões os dados de uma tabela

Oi, boa tarde pessoal.
Em um banco de dados, tenho duas tabelas, ‘Projetos’ com 20 projetos inseridos, e a tabela ‘Avaliador’ com 5 avaliadores inseridos. A tabela projetos tem como fk o cpf do Avaliador, pra indicar quais e quantos projetos cada avaliador avaliou… Eu preciso listar qual foi o avaliador que mais avaliou projetos, porém, tem 5 projetos que ainda não foram avaliados, e quando eu peço pra listar o avaliador que mais avaliou projetos, aparece o cpf ‘000.000.000-00’ (cpf que coloquei para os projetos não avaliador). podem me ajudar? esse cpf é o que mais se repete na tabela, porém, não é válido… desde já agradeço.
As tabelas:

insert into Avaliador (cpf, grauAcademico, rg, nome, dataNasc, sexo, fk_codInstituicao)Values
('125.552.256-21', 'Mestre', '51.256.732-1', 'Astéfalo Santos', '1980-09-21', 'M', 1),
('124.567.753-12', 'Mestre', '12.225.731-2', 'Antonella De Cabritt', '1979-07-27', 'F', 2),
('124.422.245-12', 'Doutor', '15.221.639-9', 'Romero Brito', '1969-01-07', 'M', 3),
('234.466.214-12', 'Doutor', '12.631.122-9', 'Karla Rox', '1967-10-20', 'F', 1),
('123.366.664-21', 'Doutor', '16.639.201-5', 'Sharlott Saluh', '1970-03-21', 'F', 2)
;


insert into Projetos (codigo_interno, titulo, orcamento, dt_envio, dt_recebe, resposta, fk_cpf_avli, fk_codInstituicaoa, fk_cpf_pesqu, fk_codGacc, fk_cod)values
(1, 'NOVA FÓRMULA PERFEITA PARA CALCULO DA AREA DO CORPO HUMANO', 'R$20000', '2018-06-10', '2019-06-10',  'APROVADO', '125.552.256-21', 2, '653.323.764-21', 1, 1), -- ok
(2, 'ENERGIA LIMPA COM IMÃS', 'R$300', '2018-02-02', '2018-09-11',  'APROVADO', '124.567.753-12', 1 ,'653.323.764-21', 1, 2), -- ok
(3, 'CELULAR DE GRAFENO', 'R$150000', '2018-11-29', '2020-11-29', 'APROVADO', '125.552.256-21', 1, '857.387.291-29', 1, 3), -- ok 
(4, 'ROBÔ QUE CURA PACIENTES', 'R$19000', '2018-07-27', '2019-05-27',  'APROVADO', '124.567.753-12', 2, '857.387.291-29', 2, 4), -- ok
(5, 'IMPLANTAR 3A GERAÇÃO DE DENTES', 'R$40000', '2018-01-01', '2024-01-01',  'APROVADO', '125.552.256-21', 3, '126.632.284-92', 2, 5), -- ok	
(6, 'PESQUISA - CURA DA AIDS', 'R$16000', '2018-05-20', '2019-05-20',  'APROVADO', '125.552.256-21', 1, '126.632.284-92', 2, 6), -- ok
(7, 'PRODUÇÃO DE BIOINSETICIDA', 'R$51000', '2013-07-27', '2023-05-11',  'APROVADO', '124.422.245-12', 2, '124.673.368-84', 3, 7), -- ok
(8, 'RESULTADO DA CRUZAÇÃO DE ESPÉCIES DIFERENTES', 'R$11000', '2019-02-26', '2020-08-10', 'APROVADO', '234.466.214-12', 1, '124.673.368-84', 3, 8), -- ok
(9, 'BIOLOGIA E TAXONOMIA DE TRIATOMINEOS, VETORES DA DOENÇA DE CHAGAS', 'R$12000', '2010-10-29', '2020-10-29', 'APROVADO', '125.552.256-21', 1, '521.567.782-24', 3, 9), -- ok
(10, 'MÁQUINA QUE CUSTURA PONTOS EM CÃES', 'R$2900', '2018-02-02', '2018-12-02',  'APROVADO', '234.466.214-12', 1 ,'521.567.782-24', 4, 10), -- ok
(11, 'PLANTAS NANOBIONICAS E ILUMINAÇÃO NATURAL', 'R$7000', '2019-01-01', '2021-01-01',  'REPROVADO', '124.422.245-12', 2, '958.864.418-99', 4, 11), -- ok
(12, 'ACELERAÇÃO DE PLANTAÇÕES', 'R$7900', '2018-02-02', '2018-10-10',  'REPROVADO', '124.422.245-12', 3, '958.864.418-99', 4, 12), -- ok
(13, 'PRODUTO QUE DISSOLVE QUALQUER COISA', 'R$12002', '2019-01-20', '2029-01-20', 'REPROVADO', '123.366.664-21', 3, '212.552.721-23', 5, 13), -- ok
(14, 'TIJOLOS INTELIGENTES', 'R$15000', '2018-11-16', '2020-12-16',  'REPROVADO', '124.422.245-12', 3, '212.552.721-23', 5, 14), -- ok
(15, 'PRODUTO QUÍMICO DESTACA MINÉRIOS ATÉ 5 CAMADAS', 'R$30000', '2019-05-06', '2021-05-06',  'REPROVADO', '123.366.664-21', 2, '244.512.215-88', 5, 15), -- ok
(16, 'DISCIPLINA ADMINISTRAÇÃO NAS ESCOLAS', 'R$30000', '2020-01-01', '2022-10-10','NÃO AVALIADO', '000.000.000-00', 2, '244.512.215-88', 6, 16), -- ok
(17, 'ESTUDO DE MICRO EXPRESSÕES NO JULGAMENTO', 'R$3500', '2018-01-25', '2019-04-25',  'NÃO AVALIADO', '000.000.000-00', 3, '235.531.774-62', 6, 17), -- ok
(18, 'A FORMA QUE O DINHEIRO ESTÁ GIRANDO O MUNDO', 'R$6606', '2018-12-25', '2019-12-15',  'NÃO AVALIADO', '000.000.000-00',  2, '235.531.774-62', 6, 18), -- ok
(19, 'ANTROPOLOGIA - OBJETOS E COMPORTAMENTOS', 'R$4000', '2019-01-01', '2021-01-01',  'NÃO AVALIADO', '000.000.000-00', 2, '633.521.832-82', 7, 19), -- ok
(20, 'TEORIA DA PROJETABILIDADE DE FUNDO', 'R$900', '2018-03-10', '2018-10-10',  'NÃO AVALIADO', '000.000.000-00', 1, '633.521.832-82', 7, 20) -- ok
;

o select:

select count(DISTINCT Avaliador.nome) as QuantidadeDeProjetosAvaliados, Avaliador.nome
from Avaliador
inner join Projetos
on Avaliador.cpf = Projetos.fk_cpf_avli
where fk_cpf_avli > 0;

esse select está me resultando número de projetos avaliados = 5 e o nome do avaliador : Sharlot, mas está errado.;;

Faltou você colocar o select que está fazendo para essa consulta.

Você realmente precisa preencher os projetos não avaliados com o CPF ‘000.000.000-00’? Se não, deixe-os como nulos e adicione uma condição not null na sua consulta. Se essa informação é obrigatória, adicione uma verificação pra ignorar esse cpf.

Abraço.

Antes não estava preenchido com os zeros, porém, por conta disso comecei a ter problemas pois é uma fk que estava vazia na tabela projetos

Column count doesn’t match value count at row 16

recebo esse erro quando os campos de cpf nos projetos não avaliados ficam vazios

Você ainda não colocou o sql da consulta que está fazendo, onde quer que não traga os registros que não foram avaliados.

Isso quando você faz o insert, certo? Você precisa passar null para as colunas que devem ficar vazias. Se você tentar passar um valor, vai ter problemas com a FK.

Abraço.

coloquei ali no código no tópico, da uma olhada no final

Como você está preenchendo o cpf de registros sem avaliaçao com 000.000.000-00, basta adicionar uma condição para não pegar esses registros. Algo mais ou menos assim:

select count(DISTINCT Avaliador.nome) as QuantidadeDeProjetosAvaliados, 
  Avaliador.nome
from Avaliador
inner join Projetos
on Avaliador.cpf = Projetos.fk_cpf_avli
where fk_cpf_avli <> '000.000.000-00';

Por que está errado? Qual resultado você esperava? É mais fácil você dizer qual resultado espera do que a gente ter que ficar procurando o que pode estar errado no seu código.

Se você precisa somente do avaliador que avaliou mais projetos (ou seja, apenas 1 registro), precisa usar limit. Ficaria algo assim:

select count(*) as QuantidadeDeProjetosAvaliados, Avaliador.nome
from Avaliador
inner join Projetos
on Avaliador.cpf = Projetos.fk_cpf_avli
where fk_cpf_avli <> '000.000.000-00'
  group by Avaliador.nome
  order by count(*)
  limit 1;

Obs: a sintaxe pode precisar de ajuste.

Abraço.

Peço desculpas comecei a estudar mysql recentemente, eu não conhecia esse ‘limit’ mas já sei que isso é preciso para o que eu quero fazer, justamente, listar somente 1 registro, o do avaliador que avaliou mais projetos…