Передача параметра в подзапрос

imag777

Новичок
Всем доброе время суток!
Есть таблица с заказами, нужно выбрать список наиболее частых клиентов и посчитать сколько они сделали заказов, опираясь на их email в заказе. Каждая строка таблицы соответствует одному товару, поэтому несколько строк могут иметь один номер заказа, следовательно по ним идет группировка.
Запрос выглядит так:
Код:
SELECT
`order_number`,
`order_client_name`,
`order_client_phone`,
`order_client_email`,
(SELECT COUNT(DISTINCT `order_number`) FROM `mm_virtuemart_shop_orders` 
WHERE `order_client_email` = '[email protected]' ) AS `kol`
FROM `mm_virtuemart_shop_orders`

WHERE `order_client_email` <> '' AND `order_client_email` LIKE '%@%'
GROUP BY `order_number`
ORDER BY `order_client_email` DESC
LIMIT 15

не могу понять как передать в подзапрос текущее значение email (при подстановке [email protected]) считает правильно, но только для конкрентого email, а нужно посчитать аналогичным образом для каждого. Большая просьба подсказать, как можно выкрутиться :)
 

Фанат

oncle terrible
Команда форума
Все-таки, Mysql 3.23 была идеальной БД.
Ламерам приходилось учить SQL вместо того чтобы тупо пихать везде подзапросы, причем к той же самой таблице!
 

imag777

Новичок
Все-таки, Mysql 3.23 была идеальной БД.
Ламерам приходилось учить SQL вместо того чтобы тупо пихать везде подзапросы, причем к той же самой таблице!
Я вас поздравляю, вы самоутвердились за счет моего нубского вопроса, я не учел что здесь все, кроме меня профи. Я думаю лучше бы вы вообще не отвечали. Может, кто-нибудь наведет, как организовать такой запрос? Буду благодарен совет с хоть какой-нибудь смысловой нагрузкой.
 

Фанат

oncle terrible
Команда форума
Для начала надо организовать БД.
И не пихать емейлы в одну таблицу с заказами.

Должно быть как минимум три таблицы - клиентов, заказов, и товаров по заказам.
В такой структуре ты легко посчитаешь самых активных клиентов, сгруппировав таблицу заказов по айди клиента.
 
Сверху