2009-11-23 6 views
1

Typiquement, j'ai un panier très simple avec quelques articles, avec une quantité.SQL Calculer le prix du panier dans une demande

je veux faire quelque chose comme ceci:

SELECT SUM(price * quantity) as total FROM products WHERE product_id IN (1,2,3,4); 

Mais comment puis-je lier la quantité avec la quantité product_id puisque n'est pas dans la base de données?

Existe-t-il un autre moyen de le faire avec un faible coût SQL?

Répondre

3

Peut-être que vous pouvez simplement retourner la liste de prix pour un tas de produits, puis multipliez cette liste un par un avec la quantité ci-jointe.

SELECT product_id, price FROM products WHERE product_id IN (1,2,3,4); 

Ensuite, prenez votre n-uplet sortir et multiplier/somme des quantités (être dans un tableau ou d'une liste, comme la même liste que vous obtenez de votre clause IN dans Sql)

+0

Bien sûr, vous avez raison Je ne sais pas pourquoi je pensais si complexe. Plus j'ai besoin du prix de chaque produit dans le panier. Donc, cela a du sens. – Natim

Questions connexes