J'avons ajouté une fonctionnalité comme à une base de données entrées ... voici la structure du DB:Récupération comme compte sur les entrées de SQL
**Users**
user_id
user_name
etc.
**Entries**
entry_id
entry_content
etc.
**Likes**
user_id
entry_id
(Il est un peu plus compliqué que cela, il y a groupes/catégories, mais cela ne devrait l'expliquer bien ...) Voici la requête SQL Je travaille avec au moment:
SELECT
entries.*,
DATE_FORMAT(entry_date, "%M %D, %Y") as entry_date,
groups.group_short_name,
users.user_name, users.user_id,
FROM entries
INNER JOIN groups ON groups.group_id = entries.group_id
INNER JOIN users ON users.user_id = entries.user_id
ORDER BY entry_date DESC
J'essaie de récupérer aussi aime par entrée avec cette requête et je me demandais si c'est possible. J'ai essayé:
COUNT(DISTINCT likes.like_id) as likes
avec
LEFT JOIN likes ON likes.entry_id = entries.entry_id
Mais je ne pense pas que ce soit partout près de droite. Suis-je loin? Est-ce possible? J'espère que tout cela a du sens.
Merci pour l'aide à l'avance.
Très cool. Je n'avais pas réalisé que ça pouvait être si simple. Merci! –
Oups frappé entrer trop vite ... se demandant simplement, pourquoi devrais-je besoin de donner mes alias de tables? Est-ce si grave d'écrire des 'entrées' au lieu de 'e' à chaque fois? Je le fais seulement quelques fois ... –
@Ian Je le fais toujours pour un certain nombre de raisons .. Il rend l'écriture des requêtes plus facile, vous êtes plus informé et précis lors de la création de jointures et de sous-requêtes, et je n'ont pas trouvé une bonne raison de ne pas le faire. :) – Fosco