On 2015-08-26 05:12 AM, jose isaias cabrera wrote: > Greetings, perhaps this is not even possible... > > But I am trying to do something like this, > > WITH EmailData (name,contact,dstamp) AS > ( > SELECT > 'last, first', > 'first.last at xerox.com', > '2015-08-25 11:11:11' > ) > UPDATE LSOpenProjects SET XtraB = EmailData.dstamp, pmuk = EmailData.contact > WHERE pmuk = EmailData.name; > > But, it's not working. Is this possible? Thanks.
Expanding on what J. Decker already noted, if perhaps you do this to add multiple fields, this method would be a bit cumbersome. I am assuming you dynamically build the query, could you not just do this (which will have the exact same effect): UPDATE LSOpenProjects SET XtraB = '2015-08-25 11:11:11' WHERE pmuk = 'first, last'; If not, this is a cleaner method I would use which allows multiple updates: WITH EmailData (name,contact,dstamp) AS ( SELECT 'last, first', 'first.last at xerox.com', '2015-08-25 11:11:11' UNION ALL SELECT 'last2, first2', 'first2.last2 at xerox.com', '2015-08-25 11:11:11' ) UPDATE LSOpenProjects SET XtraB = (SELECT dstamp FROM EmailData WHERE EmailData.name = pmuk) WHERE pmuk IN (SELECT name FROM EmailData);