SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 09.03.2015 14:12:16

gamlet101
Участник
Зарегистрирован: 09.03.2015
Сообщений: 4

Операции сравнения в select

Добрый день!

Можно ли каким-либо образом одним запросом получить вот это:

select sum(kolvo*price), sum(kolvo*price //только где kolvo < 0//) from orders

т.е. общую сумму и сумму только с отрицательными значениями

Неактивен

 

#2 09.03.2015 14:44:44

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Операции сравнения в select

Можно через union соединить два запроса, во втором указываете в WHERE kolvo < 0


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#3 09.03.2015 18:02:48

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Операции сравнения в select

Если результат нужен в виде строки, то

select sum(kolvo*price), sum(if(kolvo<0,kolvo,0)*price) from orders;

или
select * from (select sum(kolvo*price) from orders) t, (select sum(kolvo*price) from orders where kolvo<0) t1;

Неактивен

 

#4 10.03.2015 16:09:30

gamlet101
Участник
Зарегистрирован: 09.03.2015
Сообщений: 4

Re: Операции сравнения в select

vasya написал:

select sum(kolvo*price), sum(if(kolvo<0,kolvo,0)*price) from orders;

Супер, спасибо огромное!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson