我有一個表,名爲FacilityDatabaseConnection一樣,所以, ID,FacilityID,DatabaseTypeID,的ConnectionString計算字段,選擇基礎上的ID 2
所以給予FacilityID和DatabaseTypeID對你會得到一個ConnectionString的。 設施和數據庫類型表都有「名稱」字段。 我想提出一個「名稱」字段中FacilityDatabaseConnection做到以下幾點,
SELECT (dbo.Facility.Name+' - '+dbo.DatabaseType.Name) as Name
FROM dbo.FacilityDatabaseConnection
INNER JOIN dbo.Facility
ON dbo.FacilityDatabaseConnection.FacilityID = dbo.Facility.ID
INNER JOIN dbo.DatabaseType
ON dbo.FacilityDatabaseConnection.DatabaseTypeID = dbo.DatabaseType.ID
所以它返回「FacilityName - 數據庫類型」
這可以作爲一個查詢,但有可能使這是一個領域?
我試過,
ALTER TABLE dbo.FacilityDatabaseConnection
ADD Name AS (SELECT (dbo.Facility.Name+' - '+dbo.DatabaseType.Name) as Name
FROM dbo.FacilityDatabaseConnection
INNER JOIN dbo.Facility
ON dbo.FacilityDatabaseConnection.FacilityID = dbo.Facility.ID
INNER JOIN dbo.DatabaseType
ON dbo.FacilityDatabaseConnection.DatabaseTypeID = dbo.DatabaseType.ID) PERSISTED
這給了我一個錯誤「子查詢在這種情況下是不允許的。只有標量表達式是允許的。」
有沒有辦法實現這一目標,或者這樣的計算領域是不可能的?
你必須使用視圖來產生這樣的一個派生視圖。 –