Я пытаюсь выполнить запрос в Oracle, где я хочу сделать отдельный выбор по 2 столбцам (position
, at.task_number
), но в целом я все еще хочу отобразить дополнительные 4 столбца.
Я понимаю, что Oracle все равно использует разные для всех используемых столбцов, а не просто предложение порядка.Если я уберу квалификации APP_GRP
и ag.app_group_cd
, тогда мой запрос даст мне желаемый результат, но мне также нужно отобразить эти столбцы.
Вот как выглядит мой избранный сегодня, но он не дает мне то, что я хочу.
select distinct
(select cv.display from code_value cv where cv.code_value = ag.position_cd) AS POSITION, AG.POSITION_CD,
(select cv.display from code_value cv where cv.code_value = ag.app_group_cd) AS APP_GRP, ag.app_group_cd,
at.task_number, at.description, Users=count(ag.position_cd)
from
application_group ag, application_task at, task_access ta, code_value cv
plan cv
where cv.code_set= 78
and cv.active_ind = 1
and cv.begin_effective_dt_tm <= SYSDATE
and cv.end_effective_dt_tm >= SYSDATE
join ag
where ag.position_cd = cv.code_value
join ta
where ta.app_group_cd = ag.app_group_cd
join at
where at.task_number = ta.task_number
and at.task_number in (1, 2, 3, 4, 5, 6)
and at.active_ind = 1
join d
group by
ag.position_cd, ag.app_group_cd, at.task_number, at.description
having
COUNT(ag.position_cd)>0
order by position, at.task_number
ОБНОВЛЕНО
Мой запрос возвращает что-то вроде этого ...
ПОЛОЖЕНИЕ ----- APP_GRP ----- TASK_NUMBER
zzzDBA ------------- DBA --------------------- 1
zzzDBA ------------- DBA --------------------- 4
zzzDBA ------------- DBA --------------------- 3
zzzDBA------------- DBA --------------------- 5
zzzDBA -------------DBA --------------------- 2
zzzDBA ------------- DBA -------------------- 3
zzzDBA ------------- DBA -------------------- 4
zzzDBA ------------- DBA -------------------- 5
В конечном итоге я хочу добраться туда, куда я только возвращаюсь:
ПОЛОЖЕНИЕ ----- APP_GRP ----- TASK_NUMBER
zzzDBA ------------- DBA --------------------- 1
zzzDBA ------------- DBA --------------------- 4
zzzDBA ------------- DBA --------------------- 3
zzzDBA ------------- DBA --------------------- 5
zzzDBA ------------- DBA --------------------- 2
"удаление" дублирующихся строк для TASK_NUMBER IN (3, 4 5)