Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

GROUP BY clause with Alias

633450Feb 23 2009 — edited Feb 26 2009
Hi,
I am trying to run following query and i tried to run littel different way but no luck.
If someone can help me out.
I know that icann't use the alias in GROUP BY clause.
I am getting errors like "NOT a GROUP BY Function" or Identifier is not valid within my different fromat of the sql.
For C_CODE (MAx function part_, i have to make a header for each C__CODE and put the corrospondence value for S_TASK.


SELECT s_name ,login, f_name, l_name, email, S_ID, S_EMAIL,
desc, wave,

MAX(DECODE(C_CODE, '100',S_TASK, '')) "100",
MAX(DECODE(C_CODE, '150',S_TASK, '')) "150",
MAX(DECODE(C_CODE, '200',S_TASK, '')) "200"
FROM

*(*
SELECT b.S_name, d.login, d.f_name,d.l_name, d.email,
*(SELECT d.login FROM user d WHERE d.id = c.rep_to_id) AS S_ID,*
*(SELECT d.email FROM user d WHERE d.id = c.rep_to_id) AS S_EMAIL,*
e.desc, f.wave, C_CODE, S_TASK
FROM CT_E_STAK_MAP A,
ct_stak B,
e_info C,
user D,
e_code E,
e_web_info F,

C_STAK_MAP G,
C_CORS H,

C_S_TASK I,
C_S_STAK_MAP J
WHERE a.C_stak_id = b.c_stak_id

AND b.c_stak_id = G.c_stak_id
AND B.C_STAK_ID = J.C_STAK_ID
AND J.C_S_TASK_ID = I.C_S_TASK_ID
AND G.C_CORS_ID = H.C_CORS_ID
AND a.U_id = c.U_id

AND a.U_id = d.id

AND d.id = f.U_id

AND c.ctll3 = e.c_st_val

AND c.ctl1_2 = e.ctl1_2

AND e.c_set_name = 'EY'

AND c.active = 1
GROUP BY b.s_name, d.login, d.f_name,d.l_name, d.email,d.login, d.email, S_ID, S_EMAIL,
e.desc, f.wave, C_CODE, S_TASK
*)*
GROUP BY s_name ,login, f_name, l_name, email, S_ID, S_EMAIL, desc, wave

Please let me know if you need more info.
Thanks for your help!
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 26 2009
Added on Feb 23 2009
16 comments
4,945 views