[英]run a single query on multiple databases
1)我有一個表employee(emp_id,emp_name,emp_salary); 我想找到薪水最高的前2名員工而沒有使用限制
2)我如何運行查詢,以便它從兩個數據庫mysql服務器上的數據庫中獲取記錄,這應該在單個mysql查詢中完成
在此先感謝您的幫助或答復
一個查詢不能一次與兩個數據庫服務器對話。 只是不允許。 但是您可以使用FEDERATED表鏈接兩個服務器。 這使“遠程”表看起來像是真正存儲在本地。
但是,除非仍然可以以某種方式聯接兩個表,否則您仍然必須使用聯合查詢。
SELECT blah,blah,blah
FROM localtable
UNION
SELECT blah,blah,blah
FROM federatedtable
那么LIMIT到底有什么問題呢?
select *
from (select *
from db1.employee
order by salary desc limit 2
union
select *
from db2.employee
order by salary desc limit 2
) emp
order by emp.salary desc limit 2
如果bd1和db2中的員工肯定不同,或者您不想刪除重復項,請更改為UNION ALL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.