I have a query:
update product_product
set (write_date, default_code) = (LOCALTIMESTAMP, 'update')
where product_tmpl_id in (
select distinct product_tmpl_id
from product_template
where type='import');
And it takes 7 hours to complete. However, when I execute the subquery:
select distinct product_tmpl_id
from product_template
where type='import';
I get the error:
column “product_tmpl_id” does not exist
There isn’t a column product_tmpl_id
in the table product_template
.
It was my mistake. The first query should have been:
update product_product set (write_date,default_code) = (LOCALTIMESTAMP,'update')
where product_tmpl_id in
(select distinct id from product_template where type='import');
And it onle takes several seconds to run.
So my questions are the following:
- why didn`t the first query fail?
- why took it so long to run?
- what exactly did it do?
The result of select version();
is
PostgreSQL 9.4.3 on x86_64-unknown-linux-gnu,
compiled by gcc (Debian 4.9.2-10) 4.9.2, 64-bit