Requete SQL - Access

gabkiel Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
moderno31 Messages postés 872 Date d'inscription   Statut Membre Dernière intervention   -
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 872 Date d'inscription   Statut Membre Dernière intervention   92
 
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