Обсуждение: Subqueryes
Hi list, I must add some days (i.e:365) to my current_date and put it in my table (an UPDATE). By now, it is simple but my "days to add" is in another table. How could I do this kind of update My sql is like this (but is not working): update myTable set date = (current_date + (Select daysToAdd from base.Table1 where myFKey_id = Table1Id) ) where Expire_Date = now()::Date; -- Atenciosamente Ezequias Rodrigues da Rocha
Ezequias R. da Rocha wrote: > Hi list, > > I must add some days (i.e:365) to my current_date and put it in my table > (an UPDATE). By now, it is simple but my "days to add" is in another table. > > How could I do this kind of update > > My sql is like this (but is not working): > > update myTable > set date = (current_date + (Select daysToAdd from base.Table1 where > myFKey_id = Table1Id) ) > where Expire_Date = now()::Date; So what is the error message? -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc.
> > update myTable > set date = (current_date + (Select daysToAdd from base.Table1 where > myFKey_id = Table1Id) ) > where Expire_Date = now()::Date; Does this work: http://www.postgresql.org/docs/8.2/interactive/sql-update.html UPDATE myTable SET date = current_date + B.daysToAdd FROM Table1 B WHERE myFKey_id = B.Table1Id; Regards, Richard Broersma Jr.
Perfect quite nice. I am doing things that I could not believe I could do without the community. Thank you so much. -- Atenciosamente Ezequias Rodrigues da Rocha Richard Broersma Jr escreveu: >> update myTable >> set date = (current_date + (Select daysToAdd from base.Table1 where >> myFKey_id = Table1Id) ) >> where Expire_Date = now()::Date; >> > > Does this work: http://www.postgresql.org/docs/8.2/interactive/sql-update.html > > UPDATE myTable > SET date = current_date + B.daysToAdd > FROM Table1 B > WHERE myFKey_id = B.Table1Id; > > Regards, > Richard Broersma Jr. > > > ---------------------------(end of broadcast)--------------------------- > TIP 6: explain analyze is your friend > >