Я нашел решение этого вопроса, но в случае, если один из столбцов является подзапросом, как я могу включить его в группу, или мне нужно включить его в группу. Я буду вставлять запрос здесь.ORA-00979: не выражение GROUP BY?
SELECT s.customerid, s.denomid,
(SELECT su.quantity
FROM stockupdations su
WHERE s.customerid = su.custid
AND s.denomid = su.denomid
AND s.curid = su.curid) AS cur_stock, c.name AS cus_name, d.denomname AS denom,
cur.curcode AS currency
FROM stock s
LEFT JOIN customers c
ON s.customerid = c.custid
LEFT JOIN denomination d
ON d.denomid = s.denomid
LEFT JOIN currency cur
ON cur.curid = s.curid
GROUP BY s.denomid, s.customerid, c.name, d.denomname, cur.curcode
ORDER BY s.customerid ASC
Почему вы используете 'GROUP BY', когда вы не используете никаких агрегатных функций (например как 'SUM',' COUNT')? Что вы пытаетесь достичь? Пожалуйста, напишите ввод/ожидаемый вывод. – shahkalpesh
@shahkalpesh: результат такой же, как при использовании 'DISTINCT', просто больше ввода - см. [AskTom для получения дополнительной информации] (http://asktom.oracle.com/pls/asktom/f?p=100:11: 0 :::: P11_QUESTION_ID: 32961403234212). Наличие предложения GROUP BY не требует использования агрегатных функций. –