#sql-server #tsql
#sql-сервер #tsql
Вопрос:
У меня есть столбец с именем price. У меня есть две строки в этом столбце. Как вычесть row2-row1
Таблица = таблица1
У него есть имя столбца,
цена Столбец цены имеет значения как
Name price
pen 123.24
pencil 2345.6
Как вычесть две строки из столбца цены (2345.6-123.24) с помощью sql-запроса.
Результат должен быть похож на 2222.36.
Это получается путем вычитания 2345.6-123.24
Комментарии:
1. Вам нужен способ определить порядок ваших строк. Или вы могли бы использовать LEAD / LAG и ABS.
Ответ №1:
SELECT(r2.price - r1.price) AS total1
FROM table r1 CROSS JOIN
table r2
WHERE t1.name = 'pen' AND t2.name = 'pencil';
Ответ №2:
Если вы знаете «имя» значения, которое необходимо вычесть, вы могли бы сделать
Select sum(case when name = 'pen' then price * -1 else price end) from table