Thread: UPDATE with AND clarification
Hi,
Struggled to find a section about this when scanning through the docs, but awkward keywords to scan for, so apologies for duplicating a request that has very likely come through before.> UPDATE tablename SET col1 = val1 AND col2 = val2 WHERE id = X
> Update on public.tablename (cost=11.91..24.87 rows=0 width=0) (actual time=1.377..1.378 rows=0 loops=1)
> UPDATE 1
Is it because it's only looking at col2 and in this scenario that value was already correct? What's it doing with the first column (col1) in the SET?
Thanks, hoping this can be clarified so I can help others avoid the mistake in future.
On Friday, March 22, 2024, Jamie Thompson <jthompson.neuk@gmail.com> wrote:
Earlier today, I was running some sql for someone which they had submitted as:
> UPDATE tablename SET col1 = val1 AND col2 = val2 WHERE id = X
I presume these columns are booleans. So you wrote something like:
Set col1 = ( true and false = true )
Which in this case must coincidentally have produced whatever boolean value already existed in col1.
David J.
Yes they were both boolean columns.
It felt odd at the time, but yes it makes sense.
Thank you.
On Fri, 22 Mar 2024, 13:35 David G. Johnston, <david.g.johnston@gmail.com> wrote:
On Friday, March 22, 2024, Jamie Thompson <jthompson.neuk@gmail.com> wrote:Earlier today, I was running some sql for someone which they had submitted as:
> UPDATE tablename SET col1 = val1 AND col2 = val2 WHERE id = XI presume these columns are booleans. So you wrote something like:Set col1 = ( true and false = true )Which in this case must coincidentally have produced whatever boolean value already existed in col1.David J.