Search Postgresql Archives

Re: Will hundred of thousands of this type of query cause Parsing issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Sep 13, 2024 at 11:35 AM Wong, Kam Fook (TR Technology) <kamfook.wong@xxxxxxxxxxxxxxxxxx> wrote:

1) Where does query parsing occur?


Always on the server side, although your driver may do something as well.

2) Will this cause extra parsing to the posgress DB?


Yes
 

  Any pg system table to measure parsing?


No

You want to send an array of values to the same query, so it can be prepared once, like so:

SELECT abc, efg
FROM docloc a
JOIN collection b USING (collection_name)
WHERE a.column1 = ANY($1)
AND a.stage_id = (
  select max(stage_id) from collection_pit c
  where c.collection_name = a.collection_name
  and c.pid_id < $2 and c.stage_code = $3
);

Then you can always pass in three arguments, the first being an array of all the column1 values you want.

You might also want to get familiar with plan_cache_mode: https://www.postgresql.org/docs/current/sql-prepare.html

Cheers,
Greg


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux