2015-05-26 2 views
0

У меня есть таблица с id, name, type, price, name, date and type_2.MySQL выберите сумму, затем две группы

Тезисы являются счетами. Что мне нужно запросить, если я хочу выбрать все счета между Первым мая и 6 июня, которые должны быть Mr. X.

Мой код до сих пор:

SELECT sum(prix) 
from notes_de_frais 
WHERE date between '2015-05-01' AND '2015-06-06' 
HAVING name='Mr. X' 

Чтобы выбрать только дату и владелец счетов, но это не будет работать.

Что делать, если я хочу поставить 3 аргумента или более (то есть дата, владелец, тип)

Спасибо за чтение.

+0

isntead of 'HAVING name = 'Mr. X'' использовать: 'AND name = 'Mr. X'' – alexandreferris

+0

или поставить 'name' перед предложением date:' WHERE name = 'Mr. X 'И дата между' 2015-05-01 'AND' 2015-06-06'' – alexandreferris

+0

это должна быть сумма (цена) не сумма (при) – Omar

ответ

1

Вы можете расширить предложение WHERE, чтобы включить другие критерии, используя AND. И если вы собираетесь в SUM, вы должны использовать GROUP BY.

SELECT SUM(prix) from notes_de_frais 
    WHERE `date` BETWEEN '2015-05-01' AND '2015-06-06' 
    AND `name`='Mr. X' 
    AND `type`='plane tickets' 
GROUP BY `name`;