Мне интересно, как получить счетчик подзапроса / значение HANDLING_UNIT_ID. Ниже показано, что у меня есть в настоящее время:
СЧЁТ (ВЫБРАТЬ РАЗЛИЧНЫЙ СПИСОК (HANDLING_UNIT_ID; ',') ВНУТРИ ГРУППЫ (ЗАКАЗАТЬ ПО HANDLING_UNIT_ID) ОТ SHIPMENT_LINE_HANDL_UNIT ГДЕ ORDER_NO = SL.ORDER_NO) КАК КОЛИЧЕСТВО
@Mureinik Получите количество идентификаторов Hand_unit_id, подзапрос используется для получения этого значения.
Помогите нам помочь вам. Опубликовать - опубликуйте образцы данных и результат, который вы пытаетесь получить. Навскидку кажется, что listagg может оказаться неподходящим инструментом для этой работы.
Все, что мне нужно знать, это как СЧИТАТЬ подзапрос выбранного отдельного


Вы можете использовать COUNT( DISTINCT ... ) внутри подзапроса:
SELECT your_outer_values,
( SELECT COUNT( DISTINCT HANDLING_UNIT_ID )
FROM SHIPMENT_LINE_HANDL_UNIT
WHERE ORDER_NO = SL.ORDER_NO ) AS quantity
FROM your_table sl
Can anyone advice why this won't work?
Предложение GROUP BY отсутствует, поэтому LISTAGG будет работать со всем набором результатов и агрегировать его в одну строку, состоящую из списка строк с разделителями, содержащего все значения HANDLING_UNIT_ID. Поскольку есть одно значение из LISTAGG, предложение DISTINCT является избыточным, и COUNT из внешнего запроса всегда будет возвращать 1.
Чего вы пытаетесь достичь?