2013-12-09 2 views
2

Я пытаюсь выбрать пользователей из таблицы «пользователей», которые имеют наибольшее количество своих свойств «order_id» в таблице «поставки». Это то, что я пробовал:ОШИБКА: Схема «x» не существует

SELECT users.first_name, users.email, shipments.count(order_id) 
    FROM users, shipments 
    WHERE shipments.order_id = users.current_order_id 
    GROUP by shipments.order_id 
    ORDER by shipments.count(order_id) DESC 
    LIMIT 25 

Но я получаю ошибку:

ERROR: schema "shipments" does not exist 

Любые идеи?

ответ

1

Вы делаете COUNT неправильно. Имя таблицы и столбца входит в COUNT(). или вы могли бы сделать COUNT (*) в этом случае:

SELECT users.first_name, users.email, count(shipments.order_id) 
FROM users, shipments 
WHERE shipments.order_id = users.current_order_id 
GROUP by users.first_name, users.email 
ORDER by count(shipments.order_id) DESC 
LIMIT 25 

Кроме того, вы должны делать GROUP BY столбцы, которые вы выбираете, не агрегатная функция.

+0

Такая же ошибка, я боюсь! – chendriksen

+0

Попробуйте сейчас. это было неверно в заказе также –

+0

В настоящее время различная ошибка: «ERROR: column» users.first_name »должно появиться в предложении GROUP BY или использоваться в агрегированной функции LINE 1: EXPLAIN SELECT users.first_name, users.email, count (отгрузка ... » – chendriksen

Смежные вопросы