Is there away to return all the items from a table as one entry in a query

Viewed 23

I know there is away to do this...I just can't remember (too many programming languages in my head...and I may be dis-remembering something else) I have this query

this issue I'm having it is returning the cartesian set of the data.

For example... if the person has 5 roles and 5 emails I will get 25 rows for that person.

Isn't there a way to get all the emails to return as one item, and all the roles as one item...

I think there is ....I just can't remember

CODE:

SELECT DISTINCT
 saturn.spriden.spriden_id                                          AS cwid,
 saturn.spriden.spriden_first_name                                  AS "first_name",
 saturn.spriden.spriden_last_name                                   AS "last_name",
 gobtpac.gobtpac_external_user                                      AS "username",
 '***-**-'
 || substr(saturn.spbpers.spbpers_ssn, - 4)                          AS "ssn",
 to_char(saturn.spbpers.spbpers_birth_date, 'MON-DD-YYYY')          AS "dob",
 saturn.spbpers.spbpers_pref_first_name                             AS "prefname",
 general.goremal.goremal_email_address                              AS "email",
 general.gorirol.gorirol_role                                       AS "Role",
 general.gobintl.gobintl_passport_id                                AS "Passport ID",
 payroll.pebempl.pebempl_last_work_date                             AS "contract end date"
FROM
      gobtpac
 INNER JOIN saturn.spriden ON gobtpac.gobtpac_pidm = saturn.spriden.spriden_pidm
 INNER JOIN saturn.spbpers ON saturn.spriden.spriden_pidm = saturn.spbpers.spbpers_pidm
 LEFT JOIN general.goremal ON saturn.spriden.spriden_pidm = general.goremal.goremal_pidm
 LEFT JOIN general.gorirol ON saturn.spriden.spriden_pidm = general.gorirol.gorirol_pidm
 LEFT JOIN general.gobintl ON saturn.spriden.spriden_pidm = general.gobintl.gobintl_pidm
 LEFT JOIN payroll.pebempl ON saturn.spriden.spriden_id = payroll.pebempl.pebempl_pidm
WHERE
 saturn.spriden.spriden_id LIKE ( '%' )
 AND upper(saturn.spriden.spriden_last_name) LIKE ( '%' )
 AND saturn.spriden.spriden_change_ind IS NULL
 AND general.goremal.goremal_emal_code IN ( 'CO', 'AL', 'OK', 'BU', 'PE' )
 AND general.goremal.goremal_status_ind = 'A'
 AND general.gorirol.gorirol_role_group = 'INTCOMP'
ORDER BY
 "last_name",
 "first_name",
 cwid,
 "Role"
0 Answers
Related