Refining SQL query -
my query returning data. here query, sample data , sample of i'd like.
select sd.ident,sd.suniq, td.testc, td.testuniq, td.subtestc, ts.testscore, ud.metadept, max(ts.takendt)as testdate studemo sd, stutests ts, testdef td, udefstu ud ts.suniq =sd.suniq , td.testuniq = ts.testuniq , ts.suniq = ud.suniq , td.testuniq in ('2000089', '2000090', '2000091', '2000092') group sd.suniq, sd.ident, td.testc, td.subtestc, ts.testscore, ud.metadept, ts.takendt, td.testuniq order suniq
sample output
ident suniq testc testuniq subtestc testscore metadept testdate 102201 2001444 adept 2000091 l3 23 null 09/01/2006 00:00 102201 2001444 adept 2000092 l4 7 null 06/01/2007 00:00 101184 2001532 adept 2000092 l4 5 null 09/01/2006 00:00 101184 2001532 adept 2000092 l4 7 null 06/01/2006 00:00 101184 2001532 adept 2000092 l4 7 null 06/01/2007 00:00 590122 2001950 adept 2000091 l3 22 null 06/01/2007 00:00 590122 2001950 adept 2000090 l2 32 null 09/01/2006 00:00 141058 2004980 adept 2000089 l1 27 null 05/01/2006 00:00 141058 2004980 adept 2000090 l2 28 null 01/25/2008 00:00 141058 2004980 adept 2000090 l2 27 null 06/01/2007 00:00
wanted output
102201 2001444 adept 2000092 l4 7 null 06/01/2007 00:00 101184 2001532 adept 2000092 l4 7 null 06/01/2007 00:00 590122 2001950 adept 2000091 l3 22 null 06/01/2007 00:00 141058 2004980 adept 2000090 l2 28 null 01/25/2008 00:00
try this. have many group by
criteria, , need aggregates on remaining fields. desired output max
values me:
select sd.ident, sd.suniq, td.testc, max(td.testuniq) testuniq, max(td.subtestc) subtestc, max(ts.testscore) testscore, max(ud.metadept) metadept, max(ts.takendt)as testdate studemo sd, stutests ts, testdef td, udefstu ud ts.suniq =sd.suniq , td.testuniq = ts.testuniq , ts.suniq = ud.suniq , td.testuniq in ('2000089', '2000090', '2000091', '2000092') group sd.suniq, sd.ident, td.testc, order suniq
Comments
Post a Comment