Мне интересно узнать наиболее эффективный способ запроса исключения на sql. Например. Существует 2 таблицы (tableA и tableB), которые могут быть объединены в 1 столбец (col1). Я хочу отобразить данные таблицы A для всех строк, которые col1 не существует в таблицеB.SQL: сравнение производительности для исключения (Join vs Not in)
(То есть, другими словами, TableB содержит подмножество col1 из TABLEA. И я хочу, чтобы отобразить TABLEA без данных, которые существуют в TableB)
Допустим, TableB имеет 100 строк в то время как TABLEA гигантский (более чем 1M строк). Я знаю, что «Не в (не существует)» можно использовать, но, возможно, для этого есть более эффективные способы (меньше времени). Я не могу с внешними соединениями?
Отрывки и комментарии кодов очень ценятся.
Какие СУБД? SQL Server, MySQL, Oracle? Возможности оптимизаторов запросов в них различаются. –
Oracle. Я буду удивлен, если будут значительные различия в производительности по сравнению с различными СУБД. – someone
Да, вы будете удивлены. :) – Unreason