2016-09-01 2 views
0

У меня есть одна база данных для моего сайта, и в одном скрипте я каждый месяц создавал скрипт с автоматически создаваемой таблицей.Как выбрать все имя столбца spesific, в нескольких таблицах с одинаковым именем таблицы в mysql

Это мой пример таблицы:

Таблица user_2016_09

| id | unique_id | created at | 
------------------------------- 
| 1 | abcdefg | 02082016 | 

Таблица user_2016_10

| id | unique_id | created at | 
------------------------------- 
| 1 | hijklmn | 02082016 | 

и продолжаются до стола user_2017_01 с различными данными, но таким же именем столбца и имеет тождественны для имени таблицы. как выбрать все unique_id за весь месяц в 2016 году?

+0

Посмотрите на [MERGE Storage Engine] (http://dev.mysql.com/doc/refman/5.7/en/merge-storage-engine.html) – Barmar

+0

im попытаться выбрать все, а не создавать таблицу снова –

+0

Если вы создали таблицу объединений, вам нужно сделать это только один раз. Затем вы можете использовать эту таблицу для выбора из всех других таблиц. – Barmar

ответ

0

Вы можете использовать объединение

select unique_id 
from user_2016_09 
union 
select unique_id 
from user_2016_10 
union 
select unique_id 
from user_2016_11 
..... 
+0

если я хочу выбрать user_2017_01 до user_2019_01, должен ли я создать объединение снова и снова? Другого пути нет ? –

+0

Если вам нужно отличное значение, это способ ... если вы хотите, чтобы вы могли автоматически генерировать код на стороне сервера .. язык .. или создать один раз .. – scaisEdge

+0

@christan_dk Вы можете использовать динамический SQL для создания объединения с использованием запрос из 'INFORMATION_SCHEMA.TABLES'. – Barmar

Смежные вопросы