How to check a table content efficiently? With LIMIT and OFFSET? - Mailing list pgsql-general

From Stefan Keller
Subject How to check a table content efficiently? With LIMIT and OFFSET?
Date
Msg-id BANLkTimBWAzy7NzimfVCUEBw_gg=4MoLng@mail.gmail.com
Whole thread Raw
Responses Re: How to check a table content efficiently? With LIMIT and OFFSET?  (Stefan Keller <sfkeller@gmail.com>)
List pgsql-general
Hi,

I’d like to monitor a table in a read-only Postgres database by
writing a PL/pgSQL function.
The database gets periodically overwritten by a mirroring loading process.
The success criteria is, that the table contains at least some records
(actually at least more than 100000).

The first idea which comes to one’s mind is probably a count(*):

SELECT CASE WHEN (count(*) > 10000) THEN 'yes' ELSE 'no' END
FROM planet_osm_point;

But my goal is to consume as few Postgres server resources as possible.
So my idea is to retrieve an arbitrary record, like this:

SELECT CASE WHEN (osm_id::text > '') THEN 'yes' ELSE 'no' END
FROM planet_osm_point LIMIT 1 OFFSET 1000000;

Is there anyone having an even better  better idea?

Yours, Stefan

pgsql-general by date:

Previous
From: Andrej Podzimek
Date:
Subject: Regular disk activity of an idle DBMS
Next
From: preetika tyagi
Date:
Subject: Re: Shared Buffer Size