Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/01/2011, 10h36   #1
Invité de passage
 
Inscription : novembre 2007
Messages : 9
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 9
Points : 1
Points : 1
Par défaut Photothèque - comment gérer des catégories ?

bonjour ,

Je suis en train de développer une photothèque, et je bloque sur la sélection des photos associées a la sélection des catégories ... Je m'explique:

L'application possède une hiérarchie de catégorie: chaque catégorie retient l'id de sa catégorie parente.

Exemple de catégorie:
Code autre :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
Familles
     Dupont
          Nicolas
          Damien
          Yves
          Julienne
     Neven
          Yves
          Enriette
Événements
     Noël
     Anniversaire
     Mariage
Années
     2010
     2011
     2012

Chaque photo peut appartenir à plusieurs catégories, et c'est la mon problème.

Je ne sais pas comment générer une requêtes sql qui me permettrait par exemple de ne prendre que les photos de Noël 2012, ou encore les photos de "l'anniversaire d'Enriette Neven en 2011" .

Est-ce que quelqu'un a déjà fait ça ? Ou a une idée de comment le faire? Doit-on passer par la génération de requêtes imbriquées?

Merci d'avance pour tout commentaire
naindjardin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2011, 10h41   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 986
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 986
Points : 18 234
Points : 18 234
Envoyer un message via MSN à CinePhil
Puisque une photo peut appartenir à plusieurs catégories, il te faut une table associative photo_categorie (id_photo, id_categorie).
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2011, 13h35   #3
Invité de passage
 
Inscription : novembre 2007
Messages : 9
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 9
Points : 1
Points : 1
Merci de votre réponse,

Ça je l'ai effectivement fait, seulement j'aimerais savoir ce que les applications devraient exécuter comme requête (ou plutôt comment générer une requête) qui permette de sélectionner les photos correspondantes aux catégories sélectionnées.
naindjardin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2011, 13h51   #4
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 986
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 986
Points : 18 234
Points : 18 234
Envoyer un message via MSN à CinePhil
Citation:
Je ne sais pas comment générer une requêtes sql qui me permettrait par exemple de ne prendre que les photos de Noël 2012, ou encore les photos de "l'anniversaire d'Enriette Neven en 2011" .
L'idée est de sélectionner les photos des catégories souhaitées puis de compter combien il y a de lignes résultat par photo puis de restreindre les photos qui ont un nombre de lignes égal au nombre de catégories.
Pour les photos de Noël 2012 :
Code :
1
2
3
4
5
6
SELECT pc.id_photo
FROM photo_categorie pc
INNER JOIN categorie c ON c.id_categorie = pc.id_categorie
WHERE c.nom_categorie IN ('Noël', '2012')
GROUP BY id_photo
HAVING COUNT(*) = 2
À adapter à ta structure de tables.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h36.


 
 
 
 
Partenaires

Hébergement Web