Я только начал работать с базой данных MySQL, которую кто-то другой собрал, и я пытаюсь ее очистить. Для моей проблемы есть три соответствующих таблицы: таблица с перечнем аукционов, таблица с указанием лотов, проданных на каждом аукционе, и таблица с перечнем платежей по каждому лоту.
Таблица аукционов использует первичный ключ для идентификации каждого аукциона, и у каждого лота есть этот ключ, чтобы идентифицировать его с аукционом. Аналогично, у каждого лота есть свой ключ, который каждый платеж использует для идентификации его с лотом. На каждом аукционе должен быть хотя бы один лот, а на каждый лот должен быть хотя бы один платеж. Ни один платеж не должен быть привязан к лоту, у которого нет строки в таблице лотов, и ни один лот не должен быть прикреплен к аукциону, у которого нет строки в таблице аукционов. Я пытаюсь разработать запрос, который позволит мне найти строки, нарушающие это правило - например, пропущенные лоты в таблице лотов или дополнительные платежи, к которым не прикреплено много.
В данный момент я делаю отдельный запрос на подсчет, который дает мне количество лотов / аукционов, указанных в соответствующих таблицах, но если числа не совпадают, это не помогает мне найти, какие из них отсутствуют. Есть ли запрос, который я могу использовать, чтобы найти пропущенные строки?
Спасибо