I have two tables Books and Audiobooks, both of which have ISBN as their primary keys. I have a table writtenby that has an isbn attribute that has a foreign key constraint
In this specific example there is absolutely no need to use multiple tables. Just use the table "Book" and add the columns from "AudioBook", if applicable. If you have to differentiate on table level with very specific columns, create views. Have you checked to see if a "Book" and an "Audio Book" with the same content have the same ISBN?