У меня есть две таблицы: Table1 и Table2 с одинаковыми столбцами и одинаковой структурой схемы.SQL - Эффективно сравнивать данные всех столбцов из двух таблиц
Теперь я хочу выбрать данные из таблицы 1, которые присутствуют в таблице2. Однако при сравнении данных я хочу сравнить все столбцы, присутствующие в обеих этих таблицах. Например, вся таблица в таблице 1 должна присутствовать в таблице 2. Какой самый быстрый и эффективный способ достичь этого в SQL Server 2008? Обе таблицы содержат около 1000-2000 записей, и эти таблицы будут доступны очень часто.
это s является плохим дизайном базы данных. почему вы хотите сохранить общие данные в обеих таблицах на первом месте. Почему бы не создать представление для него таким образом, что доступ быстрее. В этом случае вам придется делать сравнение с каждой строкой в обеих таблицах. что ты уже испробовал? – vikeng21
@ vikeng21: На самом деле, мне нужно сделать некоторые операции очистки данных, и, следовательно, я создаю таблицу #temp, которая имеет точно такую же схему, что и фактическая таблица. Кроме того, я создал запрос для достижения вышеуказанного требования с использованием внутренних соединений. Моя единственная проблема связана с огромным количеством столбцов, мне нужно применить количество внутренних соединений, которые могут повлиять на производительность. Следовательно, я искал более эффективный способ добиться этого. – AshutoshPujari
, но зачем вам нужна вторая таблица, если вы хотите очистить данные. это для резервной цели, которая звучит для меня. проконсультируйтесь с dba, чтобы узнать, есть ли другой способ. я знаю, что он отклоняется от фактического вопроса, но почему бы не избежать этого, прежде чем идти на сравнение. вы думаете о производительности, и это прекрасно. но я бы настоятельно советовал dba, прежде чем идти дальше – vikeng21