Объем данных после функции соединения "огромный" - PullRequest
0 голосов
/ 11 июля 2019

Моя таблица после использования функции соединения выросла с двух таблиц с 27 МБ и 37 МБ до 2930 МБ. Этот размер таблицы слишком велик, используйте его в дальнейшем для меня.

Я работаю на Microsoft SQL Server и после объединения двух таблиц пространство данных для таблицы значительно увеличилось. В первой таблице около 40000 строк и во второй 428. Количество строк после объединения составляет 37000. Это должно быть правильно.

Я подозреваю, что это может быть из-за того, как был определен тип данных для столбца. Я импортировал одну из таблиц из Excel (таблицу с 40000 строками), и поэтому программа взяла только выборку первых строк, чтобы определить тип данных. Некоторые строки ниже в таблице превышают заданный тип данных (в основном nvarchar (255), когда в некоторых строках было около 400 символов). Поэтому я изменил первый столбец, где теперь почти каждый столбец имеет поле с 300 символами в первой строке. Затем SQL автоматически изменился на nvarchar (MAX) для этих столбцов, и это сработало.

Я использовал функцию соединения:


SELECT * into NewTable
    FROM Table1
    JOIN Table2
    ON   Table2.Row1=Table1.Row2; 

Я хотел бы иметь ту же таблицу в качестве результата, но не больше, чем 50 МБ. The screenshot is from after the join operation

Снимок экрана после операции соединения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...