powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Уникальный id для двух таблиц.
4 сообщений из 4, страница 1 из 1
Уникальный id для двух таблиц.
    #38549187
...:::Alex:::...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Суть такого извращения такая:

есть 2 одинаковых таблицы MyISAM

offers_1
offer_id (primary key)
name

offers_2
offer_id (primary key)
name

В первой таблице скажем каждый день очищается/добавляется около 700 тыс. строк. Вставляется посредством INSERT DELAYED
Во второй таблице данные меняются постоянно, но мало

Подскажите, как будет быстрее сделать поиск по полю name сразу по двум таблицам (union использовать быстро?)
И мне нужен уникальный индекс каждой записи с двух таблиц (может быть случаи что и в первой и во второй будут одинаковые offer_id)
На ум приходит только создать 3ю таблицу такого рода:

offers_key
unique_key (Autoincrement, primary)
offer_id
table_name

Но быстро ли такая работа будет?
...
Рейтинг: 0 / 0
Уникальный id для двух таблиц.
    #38549188
...:::Alex:::...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл добавить: MySQL 5.5
...
Рейтинг: 0 / 0
Уникальный id для двух таблиц.
    #38549190
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...:::Alex:::...На ум приходит только создать 3ю таблицу такого рода:Тогда уж слить две исходные таблицы в одну.
...
Рейтинг: 0 / 0
Уникальный id для двух таблиц.
    #38549217
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftслить две исходные таблицы в одну.
+1

...:::Alex:::...как будет быстрее сделать поиск по полю name сразу по двум таблицам (union использовать быстро?)
Можно UNION, можно сделать над-таблицу (Merge Engine). По скорости практически одно и то же. Merge даже предпочтительнее, ибо там можно состряпать общий индекс.

...:::Alex:::...мне нужен уникальный индекс каждой записи с двух таблиц (может быть случаи что и в первой и во второй будут одинаковые offer_id)
Ну а если дубль - тебя что, устроит посыл клиента в пешее эротическое? особенно обломавшийся на непонятно которой записи твой INSERT DELAYED? уж лучше разводить коллизии "вручную".

Если навылет не прёт объединить таблицы в одну (возможнор, добавив поле идентификации), можно перекроить данные в таблицах. Выделить заведомо достаточный пул ID-ов для "статичной" таблицы, перенумеровать записи от единицы, и организовать там ручное либо триггерное заполнение поля ID. А для второй таблицы поставить начальный ID выше выделенного пула, тогда при автоприсвоении ID оно не налезет на значения из первой (если не "завернётся"). Но это костыль, причём плохой.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Уникальный id для двух таблиц.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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