Lien entre 2 tables sans retrait
jeanmarieb
Messages postés
57
Statut
Membre
-
jeanmarieb Messages postés 57 Statut Membre -
jeanmarieb Messages postés 57 Statut Membre -
Bonjour,
La recherche est facile à énoncer ... mais je ne sais pas par où m'orienter au départ :
2 tables : Produits et Promos avec un lien dans Promos qui reprend l'ID de Produits.
Je voudrais afficher tous les produits mais quand c'est en promo, afficher le prix en promo !
J'ai beau essayer ...
Merci par avance
La recherche est facile à énoncer ... mais je ne sais pas par où m'orienter au départ :
2 tables : Produits et Promos avec un lien dans Promos qui reprend l'ID de Produits.
Je voudrais afficher tous les produits mais quand c'est en promo, afficher le prix en promo !
J'ai beau essayer ...
Merci par avance
10 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
-
Voici l'une des requetes que j'ai essayé de faire (mais qui ne fonctionne pas :-() :
<CFQUERY name="TableProduits2" datasource="#session.dbname#">
SELECT
Produits.Prod_ID,
Produits.Fam_ID,
Produits.SiteName,
Produits.PU,
Produits.Prod_HT,
Produits.Qte
Produits_promos.PPromos_ID,
Produits_promos.Prod_ID,
Produits_promos.Promotion,
Produits_promos.Promo_contenu,
Produits_promos.Promo_deb,
Produits_promos.Promo_fin
FROM Produits,Produits_promos
WHERE Produits.SiteName='#Session.site#'
AND Produits.Fam_ID = 363
ORDER BY Produits.Prod_ID
</CFQUERY>
Je n'ai fait cela ! et je ne sais pas par où m'orienter !
Merci par avance -
pas de msg d'erreur mais ne fais pas ce que je veux !
La recherche est facile à énoncer ... mais je ne sais pas par où m'orienter au départ :
2 tables : Produits et Promos avec un lien dans Promos qui reprend l'ID de Produits.
Je voudrais afficher tous les produits mais quand c'est en promo, afficher le prix en promo ! -
Pour être complet, je rajoute :
<TR>
<TD class="txtmm"> Quantité *</TD><!--- Quantité --->
<TD class="txtmm">
<SELECT name="form.Prod_ID" required="yes">
<OPTION class="txtmm" value="">Réponse Quantité requise</OPTION><!--- Réponse Quantité requise --->
</CFOUTPUT>
<CFOUTPUT query="TableProduits2">
<CFIF #TablePromos.Promotion# IS 0>
<OPTION class="txtmm" value="#Prod_ID#">#TableProduits2.Qte# cartiboks à #lsnumberformat(TableProduits2.PU,'9.99')# € HT pièce soit #lsnumberformat(TableProduits2.Prod_ht,'9.99')# € HT</OPTION>
<CFELSE>
<CFIF #TablePromos.Promo_contenu# IS "P">
<cfset PPU=(#PU#*(100-#TablePromos.Promotion#)/100)>
<cfset PHT=(#Prod_ht#*(100-#TablePromos.Promotion#)/100)>
<OPTION style="background: red" value="#TableProduits2.Prod_ID#">#TableProduits2.Qte# cartiboks à #lsnumberformat(PPU,'9.99')# € HT pièce soit #lsnumberformat(PHT,'9.99')# € HT</span></OPTION>
</CFIF>
<CFIF #TablePromos.Promo_contenu# IS "Q">
<cfset PQte=(#TableProduits2.Qte#*(100+#TablePromos.Promotion#)/100)>
<OPTION style="background: green" value="#TableProduits2.Prod_ID#">#PQte# cartiboks à #lsnumberformat(TableProduits2.PU,'9.99')# € HT pièce soit #lsnumberformat(TableProduits2.Prod_ht,'9.99')# € HT</span></OPTION>
</CFIF>
</CFIF>
</CFOUTPUT>
</SELECT>
</TD>
</TR>

Ce sera plus facile pour comprendre !
Merci par avance -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
est-ce ton premier exercice de jointure entre tables?
je suggère de commencer par des exercices plus simples. -
Bonjour,
(sans certitude pour la syntaxe n'ayant pas de sqlserver sous la main... )
Mais, Avec une jointure et une vérif sur isnull
Un truc du genreSELECT P.Prod_ID, P.Fam_ID, P.SiteName, P.PU, P.Prod_HT, P.Qte PP.PPromos_ID, PP.Prod_ID, PP.Promotion, PP.Promo_contenu, PP.Promo_deb, PP.Promo_fin, ISNULL(PP.Promotion,P.PU) as PRIX FROM Produits P LEFT JOIN Produits_promos PP ON PP.Prod_ID = P.Prod_ID WHERE P.SiteName='#Session.site#' AND P.Fam_ID = 363 ORDER BY P.Prod_ID
-
Bonjour,
Avant tout merci de votre aide !
Mais ce n'est pas encore cela :-(
ISNULL(PP.Promotion,P.PU) as PRIX ne supporte qu'1 argument.
Difficulté supplémentaire PP.promos n'est pas un prix mais un pourcentage.
Pour l'instant cela 0 ou -1 au niveau du prix quand j'enlève , P.PU à ISNULL
Merci pour votre patience !
Cordialement-
C'est bien à SQL server que tu utilises comme base de données ?
Quelle version ?
Car la fonction is null en SQL server accept 2 paramètres...
Et sinon, tu peux très bien utiliser à If.
pour ce qui est des champs, n'ayant pas d'explication dans ce que tu nous a donné j'ai fait au jugé. À toi de remplacer par les bons champs.
-
-
-
-
Bonjour,
HELP !!
Un coup de main en ... Access
Merci par avance
