Выборка из нескольких таблиц в нескольких базах MySQL
Есть таблица в одной базе и несколько таблиц в другой базе. Все таблицы с идентичной структурой, например:
database.data_one:
+----+------+-----+-----+-----+
| id | type | foo | bar | baz |
+----+------+-----+-----+-----+
| 1 | 3 | 324 | 688 | 7 |
| 2 | 5 | 210 | 332 | 8 |
| 3 | 8 | 233 | 643 | 1 |
+----+------+-----+-----+-----+
another_database.data_two:
+----+------+-----+-----+-----+
| id | type | foo | bar | baz |
+----+------+-----+-----+-----+
| 1 | 6 | 324 | 570 | 7 |
| 2 | 9 | 100 | 567 | 8 |
| 3 | 7 | 213 | 843 | 1 |
+----+------+-----+-----+-----+
another_database.data_three:
+----+------+-----+-----+-----+
| id | type | foo | bar | baz |
+----+------+-----+-----+-----+
| 1 | 9 | 324 | 681 | 7 |
| 2 | 4 | 821 | 902 | 8 |
| 3 | 0 | 23 | 643 | 1 |
+----+------+-----+-----+-----+
id (ключ) строк в этих базах могут повторяться. Мне нужно сделать выборку с условиями, например если я хочу сделать её из одной таблицы, то делаю примерно так:
SELECT COUNT(id) AS count
FROM database.data
WHERE type = 9
AND foo >= 200
AND bar <= 300;
А мне надо сделать такую выборку из всех этих таблиц за один запрос силами SQL, не прибегая к коду.
Был бы благодарен за конкретные примеры на основе предоставленной структуры.
Причем таблиц может быть не 3, а произвольное количество, а следовательно очень хотелось бы задавать имя таблиц по маске (что-то вроде - SELECT COUNT(id) AS count FROM database.data_one, 'another_database.data_%' ...), чтобы не городить огородов из кода с предварительным SHOW TABLES IN another_database LIKE 'data_%'.