Получить имя базы данных в SQL запросе

Есть две базы даннных dbname1 и dbname2 В них есть одинаковые таблицы data, я хочу одним запросом вывести их содержимое, но каждая запись должна быть помечена именем базы данных

select * from `dbname1`.`data`, `dbname2`.`data`

Как мне реализовать что-то вроде

select database(), * from `dbname1`.`data`, `dbname2`.`data`

Чтобы в итоге получать строки в формате

dbname1  | 1
dbname1  | 4
dbname1  | 8
dbname1  | 11
dbname2  | 3
dbname2  | 1

Ответы (1 шт):

Автор решения: teran

Испоьзуйте UNION

select 'db1', t.*
from db1.t

union 

select 'db2', t.*
from db2.t
→ Ссылка