Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Requete complexe

18 réponses
Avatar
René
Quelqu'un pourrait -il m'aider =E0 formuler une requete ?=20
assez complexe pour mon niveau.
J'ai des commandes de pizza pour mes clients, et lorsque=20
le client commande une pizza identique parmi celles d=E9j=E0=20
en commande, celle ci beneficie de 50 pour cent de remise.
Les champs de ma table "Detail_commande" sont les=20
suivants :
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
merci de votre aide
Une pizza est offerte pour ce ou celle qui m'aide =E0=20
trouver une solution.

10 réponses

1 2
Avatar
Jinroh
Pour effectuer ce genre de requête il faut déjà savoir
quelles sont les pizza actuellement en commande. Or, je ne
vois aucun champ correspondant à une heure ou à une date
de commande. Cependant, si vous avez un tel champ quelque
part, il suffit de faire une requête mise à jour sur les
tables liées entre les dates/heures de commandes et la
première pizza d'un certain type selon une tranche d'heure
que vous aurez défini au préalable.

C'est un joli exercice de style (petit exercice à faire en
20 minutes).

-----Message d'origine-----
Quelqu'un pourrait -il m'aider à formuler une requete ?
assez complexe pour mon niveau.
J'ai des commandes de pizza pour mes clients, et lorsque
le client commande une pizza identique parmi celles déjà
en commande, celle ci beneficie de 50 pour cent de remise.
Les champs de ma table "Detail_commande" sont les
suivants :
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
merci de votre aide
Une pizza est offerte pour ce ou celle qui m'aide à
trouver une solution.
.



Avatar
Arnaud [lwa]
Bonjour René,

Si j'ai bien compris les calculs, en mettant qu'un plat_prix soit égal à 10.00 euros,
on devrait avoir les prix suivants en fonction des quantités commandées :
qté prix_u prix à payer
1 10.00 10.00
2 10.00 15.00
3 10.00 25.00
4 10.00 30.00
5 10.00 40.00
6 10.00 45.00
7 10.00 55.00
8 10.00 60.00
9 10.00 70.00
10 10.00 75.00

Est-ce correct ?

Si oui, alors la formule sera tout simplement :
Sous_Total : ([Plat_Quantite]-Ent([plat_quantite]/2)/2)*[plat_prix]

--
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Site Perso : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------

| Quelqu'un pourrait -il m'aider à formuler une requete ?
| assez complexe pour mon niveau.
| J'ai des commandes de pizza pour mes clients, et lorsque
| le client commande une pizza identique parmi celles déjà
| en commande, celle ci beneficie de 50 pour cent de remise.
| Les champs de ma table "Detail_commande" sont les
| suivants :
| Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
| merci de votre aide
| Une pizza est offerte pour ce ou celle qui m'aide à
| trouver une solution.
Avatar
René
Il n'y en a pas besoin de date de commande car chaque
commande est référencée par leur Identifiant de commande
(champ Commande_Id). ok ?
le champ Plat_Id est la référence de la pizza qui est déja
en cours dans la commande. A vous de jouer, la pizza vous
attend.
-----Message d'origine-----
Pour effectuer ce genre de requête il faut déjà savoir
quelles sont les pizza actuellement en commande. Or, je
ne

vois aucun champ correspondant à une heure ou à une date
de commande. Cependant, si vous avez un tel champ quelque
part, il suffit de faire une requête mise à jour sur les
tables liées entre les dates/heures de commandes et la
première pizza d'un certain type selon une tranche
d'heure

que vous aurez défini au préalable.

C'est un joli exercice de style (petit exercice à faire
en

20 minutes).

-----Message d'origine-----
Quelqu'un pourrait -il m'aider à formuler une requete ?
assez complexe pour mon niveau.
J'ai des commandes de pizza pour mes clients, et lorsque
le client commande une pizza identique parmi celles déjà
en commande, celle ci beneficie de 50 pour cent de
remise.


Les champs de ma table "Detail_commande" sont les
suivants :
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
merci de votre aide
Une pizza est offerte pour ce ou celle qui m'aide à
trouver une solution.
.

.





Avatar
René
C'est exact à une condition près, c'est que le Plat_Id
soit identique pour appliquer la remise de 50 pour cent
SOIT :
Commande_Id Plat_Id Plat_Quantite Plat_Prix
100 P4F 1 8.60 ? (Piz aux 4 From)
100 PM 1 8.60 ? (Piz aux Mozza)
100 P4F 1 4.30 ? remise 50%
100 PM 1 4.30 ? remise 50%
101 P4F 1 8.60 ? (pas de reduction
102 P4F 1 8.60 ? (pas de reduction
-----Message d'origine-----
Bonjour René,

Si j'ai bien compris les calculs, en mettant qu'un
plat_prix soit égal à 10.00 euros,

on devrait avoir les prix suivants en fonction des
quantités commandées :

qté prix_u prix à payer
1 10.00 10.00
2 10.00 15.00
3 10.00 25.00
4 10.00 30.00
5 10.00 40.00
6 10.00 45.00
7 10.00 55.00
8 10.00 60.00
9 10.00 70.00
10 10.00 75.00

Est-ce correct ?

Si oui, alors la formule sera tout simplement :
Sous_Total : ([Plat_Quantite]-Ent([plat_quantite]/2)/2)*
[plat_prix]


--
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Site Perso : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------

Dans sa missive, René
| Quelqu'un pourrait -il m'aider à formuler une requete ?
| assez complexe pour mon niveau.
| J'ai des commandes de pizza pour mes clients, et lorsque
| le client commande une pizza identique parmi celles déjà
| en commande, celle ci beneficie de 50 pour cent de
remise.

| Les champs de ma table "Detail_commande" sont les
| suivants :
| Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
| merci de votre aide
| Une pizza est offerte pour ce ou celle qui m'aide à
| trouver une solution.


.



Avatar
Arnaud [lwa]
Bonjour,

Avec la structure qui a été communiquée,
<sic>
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
</sic>
on ne peut pas avoir dans une commande_id = 100
deux fois le même Id_plat, puisque logiquement on devrait avoir une clé primaire
double posée sur le couple commande_id et plat_id

une requête basée sur une table ne peut pas se générer de nouveaux enregistrements
En revanche, dans un enregistrement existant, elle peut afficher une colonne supplémentaire avec
le montant de la remise.

Donc structurellement, je reste sur ma formule, tant pis, ce soir je me mettrai à la diète.

;-)

--
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Site Perso : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------


| C'est exact à une condition près, c'est que le Plat_Id
| soit identique pour appliquer la remise de 50 pour cent
| SOIT :
| Commande_Id Plat_Id Plat_Quantite Plat_Prix
| 100 P4F 1 8.60 ? (Piz aux 4 From)
| 100 PM 1 8.60 ? (Piz aux Mozza)
| 100 P4F 1 4.30 ? remise 50%
| 100 PM 1 4.30 ? remise 50%
| 101 P4F 1 8.60 ? (pas de reduction
| 102 P4F 1 8.60 ? (pas de reduction
|| -----Message d'origine-----
|| Bonjour René,
||
|| Si j'ai bien compris les calculs, en mettant qu'un
| plat_prix soit égal à 10.00 euros,
|| on devrait avoir les prix suivants en fonction des quantités
|| commandées : qté prix_u prix à payer
|| 1 10.00 10.00
|| 2 10.00 15.00
|| 3 10.00 25.00
|| 4 10.00 30.00
|| 5 10.00 40.00
|| 6 10.00 45.00
|| 7 10.00 55.00
|| 8 10.00 60.00
|| 9 10.00 70.00
|| 10 10.00 75.00
||
|| Est-ce correct ?
||
|| Si oui, alors la formule sera tout simplement :
|| Sous_Total : ([Plat_Quantite]-Ent([plat_quantite]/2)/2)* [plat_prix]
||
|| --
|| Arnaud
|| --------------------------------------------------
|| Conseils d'utilisation : http://users.skynet.be/mpfa/
|| Site Perso : http://memoaccess.free.fr
|| /Réponses souhaitées sur ce forum, merci/
|| --------------------------------------------------
||
|| Dans sa missive, René
||| Quelqu'un pourrait -il m'aider à formuler une requete ?
||| assez complexe pour mon niveau.
||| J'ai des commandes de pizza pour mes clients, et lorsque
||| le client commande une pizza identique parmi celles déjà
||| en commande, celle ci beneficie de 50 pour cent de remise.
||| Les champs de ma table "Detail_commande" sont les
||| suivants :
||| Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
||| merci de votre aide
||| Une pizza est offerte pour ce ou celle qui m'aide à
||| trouver une solution.
||
||
|| .
Avatar
René
Arnaud, Comment faudrait-il avoir comme look pour ma table
de commande ? merci.
-----Message d'origine-----
Bonjour,

Avec la structure qui a été communiquée,
<sic>
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
</sic>
on ne peut pas avoir dans une commande_id = 100
deux fois le même Id_plat, puisque logiquement on devrait
avoir une clé primaire

double posée sur le couple commande_id et plat_id

une requête basée sur une table ne peut pas se générer de
nouveaux enregistrements

En revanche, dans un enregistrement existant, elle peut
afficher une colonne supplémentaire avec

le montant de la remise.

Donc structurellement, je reste sur ma formule, tant pis,
ce soir je me mettrai à la diète.


;-)

--
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Site Perso : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------


Dans sa missive, René
| C'est exact à une condition près, c'est que le Plat_Id
| soit identique pour appliquer la remise de 50 pour cent
| SOIT :
| Commande_Id Plat_Id Plat_Quantite Plat_Prix
| 100 P4F 1 8.60 ? (Piz aux 4
From)

| 100 PM 1 8.60 ? (Piz aux
Mozza)

| 100 P4F 1 4.30 ? remise 50%
| 100 PM 1 4.30 ? remise 50%
| 101 P4F 1 8.60 ? (pas de
reduction

| 102 P4F 1 8.60 ? (pas de
reduction

|| -----Message d'origine-----
|| Bonjour René,
||
|| Si j'ai bien compris les calculs, en mettant qu'un
| plat_prix soit égal à 10.00 euros,
|| on devrait avoir les prix suivants en fonction des
quantités

|| commandées : qté prix_u prix à payer
|| 1 10.00 10.00
|| 2 10.00 15.00
|| 3 10.00 25.00
|| 4 10.00 30.00
|| 5 10.00 40.00
|| 6 10.00 45.00
|| 7 10.00 55.00
|| 8 10.00 60.00
|| 9 10.00 70.00
|| 10 10.00 75.00
||
|| Est-ce correct ?
||
|| Si oui, alors la formule sera tout simplement :
|| Sous_Total : ([Plat_Quantite]-Ent([plat_quantite]/2)/2)
* [plat_prix]

||
|| --
|| Arnaud
|| --------------------------------------------------
|| Conseils d'utilisation : http://users.skynet.be/mpfa/
|| Site Perso : http://memoaccess.free.fr
|| /Réponses souhaitées sur ce forum, merci/
|| --------------------------------------------------
||
|| Dans sa missive, René
||| Quelqu'un pourrait -il m'aider à formuler une
requete ?

||| assez complexe pour mon niveau.
||| J'ai des commandes de pizza pour mes clients, et
lorsque

||| le client commande une pizza identique parmi celles
déjà

||| en commande, celle ci beneficie de 50 pour cent de
remise.

||| Les champs de ma table "Detail_commande" sont les
||| suivants :
||| Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
||| merci de votre aide
||| Une pizza est offerte pour ce ou celle qui m'aide à
||| trouver une solution.
||
||
|| .


.



Avatar
René
Est ce que je peux faire une recherche de doublon sur le
couple Coomande_Id et Plat_Id, s'il trouve des doublons,
je divise le prix par deux à partir du 2eme doublon ?
Merci Arnaud
-----Message d'origine-----
Bonjour,

Avec la structure qui a été communiquée,
<sic>
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
</sic>
on ne peut pas avoir dans une commande_id = 100
deux fois le même Id_plat, puisque logiquement on devrait
avoir une clé primaire

double posée sur le couple commande_id et plat_id

une requête basée sur une table ne peut pas se générer de
nouveaux enregistrements

En revanche, dans un enregistrement existant, elle peut
afficher une colonne supplémentaire avec

le montant de la remise.

Donc structurellement, je reste sur ma formule, tant pis,
ce soir je me mettrai à la diète.


;-)

--
Arnaud
--------------------------------------------------
Conseils d'utilisation : http://users.skynet.be/mpfa/
Site Perso : http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------


Dans sa missive, René
| C'est exact à une condition près, c'est que le Plat_Id
| soit identique pour appliquer la remise de 50 pour cent
| SOIT :
| Commande_Id Plat_Id Plat_Quantite Plat_Prix
| 100 P4F 1 8.60 ? (Piz aux 4
From)

| 100 PM 1 8.60 ? (Piz aux
Mozza)

| 100 P4F 1 4.30 ? remise 50%
| 100 PM 1 4.30 ? remise 50%
| 101 P4F 1 8.60 ? (pas de
reduction

| 102 P4F 1 8.60 ? (pas de
reduction

|| -----Message d'origine-----
|| Bonjour René,
||
|| Si j'ai bien compris les calculs, en mettant qu'un
| plat_prix soit égal à 10.00 euros,
|| on devrait avoir les prix suivants en fonction des
quantités

|| commandées : qté prix_u prix à payer
|| 1 10.00 10.00
|| 2 10.00 15.00
|| 3 10.00 25.00
|| 4 10.00 30.00
|| 5 10.00 40.00
|| 6 10.00 45.00
|| 7 10.00 55.00
|| 8 10.00 60.00
|| 9 10.00 70.00
|| 10 10.00 75.00
||
|| Est-ce correct ?
||
|| Si oui, alors la formule sera tout simplement :
|| Sous_Total : ([Plat_Quantite]-Ent([plat_quantite]/2)/2)
* [plat_prix]

||
|| --
|| Arnaud
|| --------------------------------------------------
|| Conseils d'utilisation : http://users.skynet.be/mpfa/
|| Site Perso : http://memoaccess.free.fr
|| /Réponses souhaitées sur ce forum, merci/
|| --------------------------------------------------
||
|| Dans sa missive, René
||| Quelqu'un pourrait -il m'aider à formuler une
requete ?

||| assez complexe pour mon niveau.
||| J'ai des commandes de pizza pour mes clients, et
lorsque

||| le client commande une pizza identique parmi celles
déjà

||| en commande, celle ci beneficie de 50 pour cent de
remise.

||| Les champs de ma table "Detail_commande" sont les
||| suivants :
||| Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
||| merci de votre aide
||| Une pizza est offerte pour ce ou celle qui m'aide à
||| trouver une solution.
||
||
|| .


.



Avatar
PatCatNat's
Ya des accros de la pizza ;-)))

Patrice


"René" a écrit dans le message de
news:388101c47238$dceef780$
Quelqu'un pourrait -il m'aider à formuler une requete ?
assez complexe pour mon niveau.
J'ai des commandes de pizza pour mes clients, et lorsque
le client commande une pizza identique parmi celles déjà
en commande, celle ci beneficie de 50 pour cent de remise.
Les champs de ma table "Detail_commande" sont les
suivants :
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
merci de votre aide
Une pizza est offerte pour ce ou celle qui m'aide à
trouver une solution.
Avatar
René
Vous etes invité(e) aussi
Je donne ma langue au chat !!!
Qui pourrait m'aider ?
-----Message d'origine-----
Ya des accros de la pizza ;-)))

Patrice


"René" a écrit dans
le message de

news:388101c47238$dceef780$
Quelqu'un pourrait -il m'aider à formuler une requete ?
assez complexe pour mon niveau.
J'ai des commandes de pizza pour mes clients, et lorsque
le client commande une pizza identique parmi celles déjà
en commande, celle ci beneficie de 50 pour cent de remise.
Les champs de ma table "Detail_commande" sont les
suivants :
Commande_Id, Plat_Id, Plat_Quantite, Plat_Prix
merci de votre aide
Une pizza est offerte pour ce ou celle qui m'aide à
trouver une solution.


.



Avatar
DJP
Suggestion :

Pour faire simple, faites une requête basée sur les tables
commandes et détail commandes en reprenant l'index client
et l'index (ou le code) de la pizza pour obtenir quelque
chose comme :
IdCli IdPizz
1 4
2 6
1 5
1 4
etc
Ainsi, en recherchant dans cette requête le nombre de
pizza IdPizz = [Pizza en commande] et où IdCli =
Formulaire.IdClientEnCours, avec un DCount habituel, vous
obtiendrez 0 si le client n'a jamais commandé telle pizz'
ou un nombre quelconque qui, s'il est impair devra
déclencher la remise (si j'ai bien compris votre tarif
promo) et s'il est pair fera payer votre client plein
tarif (ce qui n'est pas si grave puisqu'il pourra
bénéficier plus tard de la remise et que vos pizzas sont
certainement très bonnes :-)

Bon apétit à tous
1 2