Как установить условие WHERE для результата COUNT в OracleSQL?

Я хотел бы, чтобы вы показывали мне при выполнении в "TOTAL_SALES" только результаты, которые меньше 2

    select x.numrut as "RUT EMPLEADO", x.pnombre ||' '|| x.appaterno as "NOMBRE 
    EMPLEADO", count( z.monto_total) as TOTAL_VENTAS
    from empleado x full join ventas z
    on z.id_empleado=x.id_empleado
    where z.monto_total<2
    group by x.appaterno, x.numrut, x.pnombre
    order by TOTAL_VENTAS asc;
1
задан 27.11.2019, 23:24
1 ответ

Добавленная стоимость (sum(), count(), avg(), и т.д.) просачиваются в clÃ: usula HAVING, не в WHERE:

select x.numrut as "RUT EMPLEADO",
    x.pnombre ||' '|| x.appaterno as "NOMBRE EMPLEADO",
    count(z.monto_total) as TOTAL_VENTAS
from empleado x full join ventas z
    on z.id_empleado=x.id_empleado
group by x.appaterno, x.numrut, x.pnombre
having TOTAL_VENTAS < 2
order by TOTAL_VENTAS asc;

clÃ: usula WHERE будет выдавать тебе qué линии первоначальной таблицы ты хочешь, чтобы они имелись в виду, чтобы делать то, что ты хочешь сделать.

Потом, agruparÃ: n эти линии а следовательно ты поместил в clÃ: usula GROUP BY.

Después realizarÃ: n cÃ: lculos функций agregaci¦n (sum, avg, и т.д.).

Из-за último, filtrarÃ: n эти новые линии, добавленные а следовательно ты поместил в clÃ: usula HAVING.

0
ответ дан 01.12.2019, 10:45