Bonjour,

J'ai fais ce tuto, mais il y aun truc que je ne suis pas assez sûr d'avoir bien compris.

Que signifie le terme "as" ici ?

Est-ce qu'il prend toutes la selection de "articles.id,...à categories.titre" et le stocke dans un tableau qui s'appelle "categorie"?

    public function findWithCategory($id){
        return $this->query("
            SELECT articles.id, articles.titre, articles.contenu, articles.date, categories.titre as categorie
            FROM articles
            LEFT JOIN categories ON category_id = categories.id
            WHERE articles.id = ?
            ",
            [$id],
            true
        );
    }

3 réponses


Lartak
Réponse acceptée

Bonjour.
as dans SQL signifie alias, dans ton exemple comme il y aurait un retour avec deux champs qui se nomment pareil (titre) en en redéfinissant un, tu n'auras pas de problème.
Les alias dans SQL ne servent pas qu'a renommer des champs, mais aussi des tables, surtout pour les jointures, dans la requête de ton exemple, tu pourrais par exemple faire :

SELECT a.id, a.titre, a.contenu, a.date, c.titre AS categorie
FROM articles AS a
LEFT JOIN categories AS c ON a.category_id = c.id
WHERE a.id = ?

Personnellement, dans les requêtes SQL, je préfère mettre en majuscules tous les mots clés propre à SQL, ce qui je trouve, permet une meilleure lisibilité de la requête.

Devdeb22
Auteur

merci Lartak grâce à toi j'ai tous compris.

N'oublie pas de mettre en résolu le sujet si c'est bon ^^