เราสามารถใช้การรวมสำหรับสองตารางจากฐานข้อมูลที่แตกต่างกันได้หรือไม่? ถ้าใช่ฉันจะทำอย่างไร?
ฐานข้อมูลทั้งสองอยู่บนเซิร์ฟเวอร์เดียวกันและ DBMS เหมือนกัน
เราสามารถใช้การรวมสำหรับสองตารางจากฐานข้อมูลที่แตกต่างกันได้หรือไม่? ถ้าใช่ฉันจะทำอย่างไร?
ฐานข้อมูลทั้งสองอยู่บนเซิร์ฟเวอร์เดียวกันและ DBMS เหมือนกัน
คำตอบ:
SQL Server ช่วยให้คุณสามารถเข้าร่วมตารางจากฐานข้อมูลต่างๆได้ตราบเท่าที่ฐานข้อมูลเหล่านั้นอยู่บนเซิร์ฟเวอร์เดียวกัน ไวยากรณ์การรวมเหมือนกัน ข้อแตกต่างเพียงอย่างเดียวคือคุณต้องระบุชื่อตารางอย่างครบถ้วน
สมมติว่าคุณมีสองฐานข้อมูลบนเซิร์ฟเวอร์เดียวกัน - และDb1
มีตารางที่เรียกว่ามีคอลัมน์และมีตารางที่เรียกว่าด้วยคอลัมน์(อย่าลืมว่าทำไมตารางเหล่านั้นจึงอยู่ในฐานข้อมูลที่แตกต่างกัน)Db2
Db1
Clients
ClientId
Db2
Messages
ClientId
ตอนนี้เพื่อทำการเข้าร่วมในตารางดังกล่าวข้างต้นคุณจะใช้แบบสอบถามนี้:
select *
from Db1.dbo.Clients c
join Db2.dbo.Messages m on c.ClientId = m.ClientId