Как суммировать цены на товары в этом запросе - PullRequest
0 голосов
/ 10 июля 2019

У меня есть запрос

SELECT SUM(product.price)
FROM cart, product
WHERE cart.idUser = :idUser AND cart.idProduct = product.id

Если кто-то покупает 2 одинаковых продукта в одном заказе, этот запрос суммирует только 1 раз цену.Например: заказано 3 одинаковых товара = 3 * 10 $, запрос возвращает только 10 $

Если кто-то покупает 2 разных товара, запрос работает нормально.Например: 2 разных продукта = 1 * 5 $ И 1 * 10 $, запрос возвращает 15 $

У меня есть эти таблицы:

  1. Пользователь

  2. Заказ с столбцами: id, idUser, значение

  3. Корзина с столбцами: idUser, idProduct, количество

  4. Продукт сстолбцы: идентификатор, имя, цена

1 Ответ

2 голосов
/ 10 июля 2019

Умножьте цену на количество

SELECT SUM(quantity * product.price)
FROM cart c
JOIN product p ON c.idProduct = p.id
WHERE cart.idUser = :idUser 

и используйте современный JOIN в своих запросах, как указано выше

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...