powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
7 сообщений из 32, страница 2 из 2
Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
    #38387544
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durakruff3dпри поиске статического значения типа "p.kod = '1234567890'" ищет секунд 10.
пользуюсь dbForge Studio for MySQL, создает промежуточную таблицу при выборке.
код преобразуй в integerПоле VARCHAR-ное, чем тут поможет integer?
...
Рейтинг: 0 / 0
Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
    #38387581
ruff3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кто работал с такими объемными таблицами? Как ускорить выборку (пресечение) данных таблиц?
...
Рейтинг: 0 / 0
Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
    #38387674
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ruff3dКак ускорить выборку (пресечение) данных таблиц?Для начала я бы разобрался с данными. Зачем такие длинные поля? Почему они типа VARCHAR? Нельзя ли их преобразовать в INT?
Затем попробовал бы построить индекс без префиксов.
...
Рейтинг: 0 / 0
Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
    #38387685
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftIvan Durakпропущено...

код преобразуй в integerПоле VARCHAR-ное, чем тут поможет integer?
вот ПОЛЕ и преобразуй. Видно же что там целочисленные данные.
...
Рейтинг: 0 / 0
Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
    #38387746
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durakmiksoftпропущено...
Поле VARCHAR-ное, чем тут поможет integer?
вот ПОЛЕ и преобразуй. Видно же что там целочисленные данные.Увы, видно только топикстартеру. Может, там не все значения целочисленные...
...
Рейтинг: 0 / 0
Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
    #38387825
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ruff3d,

Возникает вопрос сразу в необходимости такого запроса. Зачем нужен список всех людей с их городами?
Зачем нужен distinct в запросе?
Он будет очень дорог при таких объемах, а kod и fio, похоже, уникальные ключи, и если связь с адресом не 1 к N, а N к 1, то distinct не нужен.

А по остальному, если убрать distinct, то для него нужны только индекс по полям связки, kod.

Идеально было бы использовать тут merge join, но mySQL его кажется ещё не поддерживает.
...
Рейтинг: 0 / 0
Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
    #38388220
ruff3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivruff3d,

Возникает вопрос сразу в необходимости такого запроса. Зачем нужен список всех людей с их городами?
Зачем нужен distinct в запросе?
Он будет очень дорог при таких объемах, а kod и fio, похоже, уникальные ключи, и если связь с адресом не 1 к N, а N к 1, то distinct не нужен.

А по остальному, если убрать distinct, то для него нужны только индекс по полям связки, kod.

Идеально было бы использовать тут merge join, но mySQL его кажется ещё не поддерживает.

мне нужно вывести только тех людей, чьи кода есть в базе adr, в которой дублируются строки (kod, adress).
...
Рейтинг: 0 / 0
7 сообщений из 32, страница 2 из 2
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка пересечения между 2-х таблиц (в одной 60 млн записей, во второй 20 тыс. записей)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]