Requête JOIN et JSON
Résolu
greg13
-
greg13 -
greg13 -
Bonjour a tous, voila je suis sur un petit projet et autant dire que je suis débutant en html, php, JS, CSS et surtout en Postgres ou je galère avec une query plus complexe d'ou ma venue ici pour demander de l'aide ^^.
Voila je vous explique, j'ai 2 tables une nommées "medias" et l'autre "playlist".
La table "medias" contient les colonnes suivante :
et une table "playlist" avec ces colonnes :
voila pour les 2 tables et en gros mes écrans doivent faire une requête sur playlist pour récupérer les médias (playlist>media) qu'ils ont a afficher par rapport a leur id (playlist > screen) . bien sur chaque playlist est unique est pointes vers des médias différents mais qui peuvent avoir des médias en commun.
du coup ma colonne média dans playlist et un genre de JSON simple (déclaré en jsonb) qui contient les ID des média du genre :
et je cherche a faire une requête avec un join qui me récupère tout les filepath, type, height et width
pour chaque id de média dans mon json de la playlist. donc si vous pouvez me donnée un coups de main
car je sais faire des requette avec des join simple mais avec le json au milieux ...
noté que rien est fixé je peut changer de type de donnée et les données que j'envoie mais ce json me permet en plus de pouvoir remonter les données dans un "select > option" de mon html avec un peut de JS (j'utilise du VueJS et travail beaucoup sur le dynamique avec de l'ajax).
j’espère avoir était suffisamment claire ^^
par avance merci
bye
Voila je vous explique, j'ai 2 tables une nommées "medias" et l'autre "playlist".
La table "medias" contient les colonnes suivante :
id -- filepath -- type -- height -- width
et une table "playlist" avec ces colonnes :
id -- screen -- media
voila pour les 2 tables et en gros mes écrans doivent faire une requête sur playlist pour récupérer les médias (playlist>media) qu'ils ont a afficher par rapport a leur id (playlist > screen) . bien sur chaque playlist est unique est pointes vers des médias différents mais qui peuvent avoir des médias en commun.
du coup ma colonne média dans playlist et un genre de JSON simple (déclaré en jsonb) qui contient les ID des média du genre :
["10","52", "32","18"]
et je cherche a faire une requête avec un join qui me récupère tout les filepath, type, height et width
pour chaque id de média dans mon json de la playlist. donc si vous pouvez me donnée un coups de main
car je sais faire des requette avec des join simple mais avec le json au milieux ...
noté que rien est fixé je peut changer de type de donnée et les données que j'envoie mais ce json me permet en plus de pouvoir remonter les données dans un "select > option" de mon html avec un peut de JS (j'utilise du VueJS et travail beaucoup sur le dynamique avec de l'ajax).
j’espère avoir était suffisamment claire ^^
par avance merci
bye
Configuration: Windows / Chrome 72.0.3626.119
A voir également:
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table
- Impossible de supprimer une page word - Guide
- Table ascii - Guide
- Creation de site web - Guide
- Table de matière word - Guide
- Google moteur de recherche page d'accueil - Guide
3 réponses
Bonjour,
Lorsque l'on a besoin d'effectuer des requêtes sur des données... on ne les stocke pas sous forme sérialisée ou json ....
Vu la structure de ce que tu souhaites stocker en BDD et requêter... le plus propre serait de faire une table d'association playlist_media avec les colonnes (id_playlist, id_media)
Lorsque l'on a besoin d'effectuer des requêtes sur des données... on ne les stocke pas sous forme sérialisée ou json ....
Vu la structure de ce que tu souhaites stocker en BDD et requêter... le plus propre serait de faire une table d'association playlist_media avec les colonnes (id_playlist, id_media)
Merci pour la réponse, mais vue qu'il peut y avoir entre 1 et 100 media par playlist ça fonctionne comment ?
ha je viens de comprendre mais ça risque pas d’être lourd un autre table avec des données déjà présente ailleurs ?
ha je viens de comprendre mais ça risque pas d’être lourd un autre table avec des données déjà présente ailleurs ?
Bonjour , ^^
bon j'ai enfin mis en place la table d’association et j'ai une table dans le genre :
j'ai donc mon id de ma playlist, comment récupérer tout les informations de ma table medias depuis cette table ?
Merci.
bon j'ai enfin mis en place la table d’association et j'ai une table dans le genre :
playlist_id media_id 20 66 20 65 21 63 21 62 21 61 21 57 21 56 21 55
j'ai donc mon id de ma playlist, comment récupérer tout les informations de ma table medias depuis cette table ?
Merci.
ha oui, j'avais essayer mais j'avais une erreur du coups j'ai cherché un autre moyen mais effectivement ça fonctionne merci beaucoup je pensais pas que l'on pouvais faire un WHERE sur une résultat générés avec un JOIN. par contre j'ai un peut de mal a comprendre les notions des JOIN mais bon ^^
En tout cas merci beaucoup tu ma vraiment bien aider ! :)
En tout cas merci beaucoup tu ma vraiment bien aider ! :)