ELSE 0 END) count_with_discount_5,
SUM(CASE WHEN order_details.price-(order_details.price*0.05)<price_with_discount
THEN product_amount ELSE 0 END) count_without_discount_5
FROM order_details
`INNER JOIN product
ON order_details.product_id=product.id
INNER JOIN product_title
ON product.product_title_id=product_title.id
GROUP BY title
ORDER BY product_title.id` —- как при таком запросе найти разницу этих двух столбцов? difference, нужен коррелирующий подзапрос? Тяжело его написать.
почему бы не засунуть все в подзапрос и просто не посчитать разницу? select t.*, v1 - v2 as difference from (<тут весь твой запрос>) t
Почему просто перед From не сделать count_without... — count_with... AS Subtraction?
да, но мне нужен такой формат
тогда пишет что Subtraction не существует в таблице
пока не понимаю что ты получил и что ты ожидаешь получить, объясни понятнее
count_with_discount_5-count_without_discount_5=difference. Но count_with и count_without это аллиасы
почему дифференс везде одинаковый?
это как пример 🤦♂️
Да легко... выгрузи во временную таблицу и посчитай. Можно подзапросы навертеть, но код не читаемый будет
нужно без temprorary обойтись . разве что подзапросы .
Обсуждают сегодня