Мне нужно разработать поиск, который ищет несколько больших таблиц SQL одновременно. Каков наилучший способ поиска в различных SQL таблицах?
Текущее состояние таблиц:
- T1: 13 столбцов; > 152000 строк
- T2: 128 столбцов; > 68000 строк
- T3: 108 столбцов; > 54000 строк; СОЕДИНЕНИЕ к T1 + T2
- T4: 151 столбец; > 20000 строк
- T5: 96 столбцов; > 59000 строк
В каждой таблице нужно искать не более 5 столбцов.
Лучше ли искать каждую таблицу отдельно? например, SELECT col1, col2, col3, col4, col5 FROM T1 WHERE CONCAT (col1, col2, col3, col4, col5) LIKE ('% Hello%')
Лучше ли создавать представление (T1 Union T2 Union T3…)?
- Результат UnionView:> 850000 строк; > 45 секунд время зарядки
- например
SELECT col1, col2, col3, col4, col5 FROM UnionView WHERE CONCAT (col1, col2, col3, col4, col5) LIKE ('% Hello%')
(~ 20 секунд время зарядки)
Есть ли другие альтернативы? Каковы ваши переживания или действия?