[英]How to query across multiple databases
我有一組屬於兩個不同數據庫中兩個不同表的數據。 我已執行查詢,但出現語法錯誤。
這兩個數據庫是:
dbo.Serve and dbo.Back
這就是我正在做的:
SELECT Back.[dbo].Back$.Last_refreshed, dbo.Back.Backup_Name, dbo.Back$.Fle, dbo.Back$.Free_Space_TB, dbo.Backup$.Operational_status, dbo.Serve$.Name,
dbo.Back$.Rack_Enclosure, dbo.Back$.Server_Name, dbo.Back$.SIZE_TB, x.field, x.piv, dbo.Serve$.SKU,
CASE
WHEN dbo.Serve$.SKU like 'F1%' or dbo.Serve$.SKU like 'F2%' or dbo.Server_History$.SKU like 'F3%' or
dbo.Serve$.SKU like 'FY14%' or dbo.Serve$.SKU like 'F5%' or dbo.Server_History$.SKU like 'F6%' then 'Group1'
WHEN dbo.Serve$.SKU like 'Gr%' or dbo.Serve$.SKU like 'Fr%' or dbo.Server_History$.SKU like 'Ex%'
or dbo.Serve$.SKU like 'Ga%' or dbo.Serve$.SKU like 'Ho%' or dbo.Serve$.SKU like 'Gen%' then 'Group2'
END AS grp
FROM dbo.Back$
inner join dbo.Serve$ ON dbo.Serve$.Name = dbo.Back$.Server_Name and dbo.Back$.Last_refreshed = dbo.Serve$.Last_refreshed
cross apply (values (dbo.Back$.Free_Space_TB, 'Available'), (dbo.Back$.SIZE_TB - dbo.Back$.Available, 'Used')) AS x(field, piv)
為什么它會在這部分給我一個錯誤?
SELECT Back.[dbo].Back$.Last_refreshed,
因為語法看起來是正確的
任何幫助表示贊賞。
這個Back.[dbo].Back$.Last_refreshed,沒有意義。 您仍然可以使用databasename.schemaname.columnname
或四部分名稱(如果您設置鏈接服務器... instancename.databasename.schemaname.columnname
),但不清楚您指的是什么: Back.[dbo].Back$.Last_refreshed
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.