Thread: Table update
View Single Post

   
  #3 (permalink)  
Old 02-28-2008, 05:38 AM
=?iso-8859-1?q?J=F8rn_Dahl-Stamnes?=
 
Posts: n/a
Default Re: Table update

On Saturday 20 January 2007 05:52, ViSolve DB Team wrote:
> Hi
>
> Update will never support group by clause, only supports group functions;
> Try as:
>
> Update teams t
> inner join rider_team as rt on (rt.team_id=t.id)
> inner join participants as p on (p.rider_id=rt.rider_id)
> inner join races as r on (r.id=p.race_id)
> set t.created = ( select min(starttime) from races);


Thanks, it worked, but all get the same date. So the result is not correct.

I want something like this (pseudo code):

for each $id in teams
{
set teams.created = select min(r.starttime)
from races as r on (r.id=p.race_id)
inner join participants as p on (p.rider_id=rt.rider_id)
inner join rider_team as rt where rt.team_id=$id
}

I guess that I have to do this in a perl script? But I would like to be able
to do this with a SQL line.

--
Jørn Dahl-Stamnes
homepage: http://www.dahl-stamnes.net/dahls/
Reply With Quote