J'ai écrit une requête SQL qui reçoit des messages non lus, mais je pense que je peux améliorer le code (vitesse et la lisibilité). La première sélection est pour la fonction COUNT, la seconde pour le groupement des messages selon conversation_id, et la sélection imbriquée finale pour la sélection des derniers messages.réécrivant cette requête SQL
S'il vous plaît donnez-moi des suggestions. Merci d'avance.
SELECT COUNT(*) as unreaded FROM (
SELECT id
FROM (
SELECT id, conversation_id
FROM messages
WHERE to_id = ?
AND readed = 0
and NOT hide_from = ?
ORDER BY sended DESC
) AS temp_messages
GROUP BY conversation_id
) as temp_messages2
« non lu », et non « unreaded » et aussi « envoyé » au lieu de « ENVOYÉE ». Ceux-ci amélioreraient la lisibilité au moins;) –
Voulez-vous que le nombre total de messages non lus compte? Ou 'non lu, id, conversation_id'? qu'est-ce que 'id'? Ce sera mieux si vous postez ddl, l'échantillon et la sortie attendue. –