in reply to Re: Contemplating some set comparison tasks
in thread Contemplating some set comparison tasks

They are in a database, in separate columns, and I am familiar with the DISTINCT function. Those get me pretty far, but my final destination would be to know the fewest number of distinct sources that contain all of the keys. I'm not sure if SQL has some set fuctions that can do this - and even if it does, that I have the right grasp of the problem to apply them. :-/
  • Comment on Re^2: Contemplating some set comparison tasks

Replies are listed 'Best First'.
Re^3: Contemplating some set comparison tasks
by erix (Prior) on Aug 12, 2014 at 15:20 UTC

    DISTINCT is really different from DISTINCT ON. And to be honest you sound as if you do not realize that.

    DISTINCT is a general SQL feature that all RDBMS have.

    DISTINCT ON is a PostgreSQL-only extension. See my examples, and the SELECT manual page that I linked to upthread.

    So I still think that the last statement in my example (the statement that reduces your 20-row set to a 13-row set) does what you require. Is that not so?

    select -- this line is the DISTINCT ON clause: distinct on (key) -- the select list follows: key, source from yourtable -- often you'd want an order by clause -- to control which rows are discarded -- In this case it does not seem to be important ;