On Mon, 2023-11-20 at 13:44 -0800, Christophe Pettus wrote:
On Nov 20, 2023, at 13:41, David Gauthier <dfgpostgres@xxxxxxxxx> wrote:I want the users to be required to provide a value for ssn in the following query..."select * from huge_view where ssn = '106-91-9930' "I never want them to query the view without specifying ssn.It has to do with resources and practicality.Is there a way to do that ?Not in a way that PostgreSQL itself will enforce. If you are concerned about a query running wild and taking up resources, setting statement_timeout for the user that will be running these queries is the best way forward. A user that has general access to PostgreSQL and can run arbitrary queries will be able to craft a query that takes up a lot of system time and memory without too much trouble.
If it's really about SSN's it might be more about bulk access to PII than performance.
A function is probably the right choice in either case.