On 19 Jun 2002, Joachim Trinkwitz wrote: > Hi all, > > I have a table (lv) with a field "semester" and I'm trying to fish out all > rows which have a value corresponding to a max() value of another > table's (lf_sem) "semester" field. The intention is to keep a value > with the current term in lf_sem so I can get all rows which concern > this term. > > Example tables: > > lv > == > semester | kvvnr > ---------+------ > 2001ss | 4185 > 2001ss | 4203 > 2002ws | 4163 > 2002ws | 4190 > > lf_sem > ====== > semester > -------- > 2001ws > 2002ss > 2002ws > > At first I tried this query: > > SELECT kvvnr > FROM lv, lf_sem > WHERE lv.semester = max(lf_sem.semester); > > This yields the message: 'Aggregates not allowed in WHERE clause'. > > Next I tried this one: > > SELECT kvvnr, max(lf_sem.semester) AS akt_semester > FROM lv, lf_sem > WHERE lv.semester = akt_semester; > > Now I got: 'Attribute 'akt_semester' not found' > > Is there another way to get what I want?
SELECT lv.kvvnr,lv.semester from lv where lv.semester = (select max(semester) from lf_sem); > > Clueless, > joachim > > ---------------------------(end of broadcast)--------------------------- > TIP 2: you can get off all lists at once with the unregister command > (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED]) > -- Achilleus Mantzios S/W Engineer IT dept Dynacom Tankers Mngmt tel: +30-10-8981112 fax: +30-10-8981877 email: [EMAIL PROTECTED] [EMAIL PROTECTED] ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])