Re: A function to find errors in groups in a table
Steve Midgley <science@misuse.org>
From: Steve Midgley <science@misuse.org>
To: Shaozhong SHI <shishaozhong@gmail.com>
Cc: pgsql-sql <pgsql-sql@lists.postgresql.org>
Date: 2022-06-09T19:16:12Z
Lists: pgsql-general, pgsql-sql
On Thu, Jun 9, 2022 at 6:37 AM Shaozhong SHI <shishaozhong@gmail.com> wrote: > There is a table full of grouped values like the following > > nodeid link_type primary > 11 outflowlink 1 > 11 inflowlink 1 > 11 outflowlink 2 > > Primary of 1 indicates a primary water course. Primary of 2 indicates a > secondary water course. > > Obviously, one of the out flow links is an error, as its primacy value is > 2. It is wrong that water flows from a primary water course into a > secondary water course. > > How can a function can be designed to find and report such errors? > Is the problem that there exists this row: 11 outflowlink 2 But there is no corresponding row: 11 inflowlink 2 So that you need to find all "orphan" rows that don't have a corresponding member with the opposing data field inflowlink or outflowlink where the "primary" column is the join field between the two rows? Thanks for clarifying your problem, Steve