Requete SQL - Access

Fermé
gabkiel Messages postés 11 Date d'inscription mercredi 26 novembre 2008 Statut Membre Dernière intervention 4 avril 2010 - 9 nov. 2009 à 17:03
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 - 9 nov. 2009 à 23:57
Bonjour,
il s'agit d'un base de données Access mettant en relation des recettes de cuisines,leurs ingrédients respectifs ainsi que les ingrédients
contenu dans un stock.

Tables:

RECETTE
[u]id_recette[/u]
nom_recette
categorie
type

RECING
#[u]id_recette[/u](clé primaire étrangère)
#[i]id_ingredient[/i](clé primaire étrangère)
quantite_ingredient
mesure_ingredient

INGREDIENT
[u]id_ingredient[/u]
nom
quantite
mesure

Pour sélectionner toutes les informations de la table recette->
SELECT * FROM RECETTE WHERE categorie LIKE'%Entrée%';

Maintenant je voudrais filtrer encore plus les réponses en s'intéressant à la quantité des ingrédients contenu dans le frigo(quantite)
et celle contenu dans une recette(quantite_ingredient).Je voudrais complèter la requete précédente avec
"AND quantite>quantite_ingredient".

Le problème est que chaque recette possède plusieurs ingrédients et certains répondent à "quantite>quantite_ingredient"
et d'autres non;
un exemple:

INGREDIENT quantite quantite_ingredient id_recette
oeuf 2 1 1
farine 100 200 1

la quantité d'œuf est validé mais pas celle de farine, la recette 1 va s'afficher car au moins un des ingrédient à les bonnes quantités.
Je voudrais avoir comme réponse à ma requête seulement les recettes ou tous les ingrédients possèdent les bonnes quantités.

Mon projet est développé en vb.net et est relié à une base Access.

J'attends avec impatience des commentaires et surtout si possible une ébauche de solution :)

merci d'avance
gab

1 réponse

moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 92
9 nov. 2009 à 23:57
hello
déjà je pense que ta structure de base de données doit répondre à ce type de besoin. Si elle ma l adaptée, tes requetes ne vont pas etre bonnes.
Ensuite partant d'une requete select * from table dans ta table des recettes, tu peux faire des jointures sur les autres tables pour récupérer les informations d'ingrédients par ex.

Encore là aussi il faut que les identifiants soient bien montés, les relations possibles entre les tables..ect

Donc quand tu veux filtrer sur plusieurs choses tu fait WHERE champ1 = 'toto' AND ou OR champ2 = 'tata' ect.
0