Bonjour à tous,
J'ai une requête MySQL qui calcul le stock de mon magasin. Les produits peuvent être unique, ou déclinés en plusieurs versions (taille, etc.).
Voici la requête actuelle :
J'aimerais que la première requête ne soit effective que s'il n'y a pas de déclinaison existante (sinon c'est comptabilisé en double), sans passer par PHP et éviter une boucle de tous les articles au préalable. Savez vous comment faire ?
J'ai bien essayé d'intégrer un IF, mais je ne suis pas très à l'aise avec ça ...
Merci d'avance
Modifié par Gaylord.P (22 Apr 2012 - 10:44)
J'ai une requête MySQL qui calcul le stock de mon magasin. Les produits peuvent être unique, ou déclinés en plusieurs versions (taille, etc.).
Voici la requête actuelle :
'
SELECT SUM(count) AS count FROM
((
SELECT
COUNT(id_product) AS count
FROM
widjoo_pro_activities_products T1
WHERE
T1.product_stock IS NOT NULL
)
UNION ALL
(
SELECT
COUNT(T2.id_product) AS count
FROM
widjoo_pro_activities_products T1 INNER JOIN widjoo_pro_activities_products_declinations T2 ON T1.id_product = T2.id_product
WHERE
T2.product_stock IS NOT NULL
))
temp
'
J'aimerais que la première requête ne soit effective que s'il n'y a pas de déclinaison existante (sinon c'est comptabilisé en double), sans passer par PHP et éviter une boucle de tous les articles au préalable. Savez vous comment faire ?
J'ai bien essayé d'intégrer un IF, mais je ne suis pas très à l'aise avec ça ...
SELECT
IF(T2.id_activity = NULL, COUNT(id_product) AS count, 0 AS count)
FROM
widjoo_pro_activities_products T1 INNER JOIN widjoo_pro_activities_products_declinations T2 ON T1.id_product = T2.id_product
Merci d'avance

Modifié par Gaylord.P (22 Apr 2012 - 10:44)