What I understand:
In addition to valid references to the referenced table, a column with a foreign key is also allowed to hold a NULL value. The SQL standard defines several match modes for foreign keys, like MATCH SIMPLE and MATCH FULL. For multi-column foreign keys, MATCH SIMPLE allows a wrong (= not referencing) value in any of the columns as long as at least one column of the foreign key holds a NULL value.
Multi-column foreign keys are rare (because multi-column primary keys are), but I can imagine valid use cases. For example a translation of a blog post might have a primary key
(post_id, language_id). Now something that references such a translation (for example which translation a user is currently editing) would have a multi-column foreign key.
What I don't understand:
Why would I ever use MATCH SIMPLE for my foreign key?
In above example it doesn't make sense to have a "currently editing" entry that only references by
post_id and not by
What would be an example where it does make sense?