26-04-2010, 07:37 PM
Coucou
je me pose certainement une question très bête mais bon...
Supposons une table maître (de référence)
id objet / info 1 / info 2 / info 3
la clef étant id objet
et une table détail
id objet / type / valeur
la clef étant id objet + type
Imaginez une recette de cuisine
dans maitre, l'id, le temps de préparation, le temps de cuisson, la température du four
dans détail, les ingrédients, leur quantité
quand je crée une instance d'objet, j'ai forcément besoin des info 1 2 3 ET des enregistrements type/valeur. Je n'aurai jamais besoin que de l'un ou de l'autre
la question est donc la suivante, dois je récupérer les données par deux requetes (SELECT __ FROM maitre WHERE id...) et (SELECT __ FROM detail WHERE id...)
ou une seule : (SELECT __ FROM maitre , detail WHERE id = id AND ...)
Info complémentaire pour le contexte
le nombre d'enregistrements de maitre devrait tourner entre 100 et 400
le nombre d'enregistrements de détail devrait tourner entre 400 et 4000
pour les champs, dans les deux cas, des entiers, avec moins d'une dizaine de colonnes par table
Merci d'avance !
je me pose certainement une question très bête mais bon...
Supposons une table maître (de référence)
id objet / info 1 / info 2 / info 3
la clef étant id objet
et une table détail
id objet / type / valeur
la clef étant id objet + type
Imaginez une recette de cuisine
dans maitre, l'id, le temps de préparation, le temps de cuisson, la température du four
dans détail, les ingrédients, leur quantité
quand je crée une instance d'objet, j'ai forcément besoin des info 1 2 3 ET des enregistrements type/valeur. Je n'aurai jamais besoin que de l'un ou de l'autre
la question est donc la suivante, dois je récupérer les données par deux requetes (SELECT __ FROM maitre WHERE id...) et (SELECT __ FROM detail WHERE id...)
ou une seule : (SELECT __ FROM maitre , detail WHERE id = id AND ...)
Info complémentaire pour le contexte
le nombre d'enregistrements de maitre devrait tourner entre 100 et 400
le nombre d'enregistrements de détail devrait tourner entre 400 et 4000
pour les champs, dans les deux cas, des entiers, avec moins d'une dizaine de colonnes par table
Merci d'avance !