Получить имя базы данных в 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