Como eu otimizo essa consulta?

10 respostas
S
SELECT Carta.titulo, COUNT(comentarios.id)
FROM Carta
JOIN Comentarios ON Carta.Id = Comentarios.PostID
GROUP BY Carta.Titulo

10 Respostas

Lucas_Camara

Essa consulta já parece ser muito simples para ser otimizada. O que consigo ver é adicionar uma paginação ou alguma clausula no WHERE para limitar os resultados com base em algum critério que faça sentido negocialmente.

S

Sim suponha milhares e milhares de linhas nas Tabelas, como eu faria?

S

Como eu criaria essas limitações?

Lucas_Camara

Se não for possível filtrar o resultado usando alguma condição no WHERE, só consigo pensar em paginação mesmo. Mas caso vc precise recuperar tudo assim de uma vez, paginação talvez não seja uma boa ideia tb.

Qual o banco de dados vc está usando?

S

mysql

Lucas_Camara

Quanto tempo essa consulta está demorando para executar?
Vc vai usar essa consulta onde? algum sistema? procedure?

S

Na verdade é um desafio, uma questão, sou estudante, tenti muito mais não consegui

S

A pergunta é: Quais tecnicas vc usaria para otimizar a consulta?

Lucas_Camara

Olha, nesse caso, dá para citar, paginação, utilização de condições no WHERE, criação de índices.

Achei essa lista nas docs do mysql de otimizações que podem ser feitas:

https://dev.mysql.com/doc/refman/8.0/en/select-optimization.html

S

Muito Obrigado Lucas, vou analisar a documentação

Criado 21 de julho de 2023
Ultima resposta 21 de jul. de 2023
Respostas 10
Participantes 2