2017年10月11日 星期三

建立運算欄位

建立運算欄位
於實務作業中,我們經常需要將某些欄位的內容加以運算來求得所需結果,例如,將單價(UnitPrice)欄位的內容乘上銷售數量(Quantity)欄位的內容,即可獲知銷售金額。所以可以藉助「運算欄位」(Computed Column)來達成。

運算欄位其實是一個虛擬的欄位,它並未將運算結果實際存放於資料表中,而只是於執行時才立即去運算出結果。

方法一:
用命令敘述建立一個運算式為UnitPrice x Discount x Quantity的運算欄位Total,如下所述:
/* 檔案名稱:Demo59.sql */
CREATE  TABLE MyTable
(
ProductName varchar(20) NOT NULL,
UnitPrice money NOT NULL,
Discount decimal(3,2) NOT NULL,
Quantity int NOT NULL,

Total AS UnitPrice*Discount*Quantity

)

方法二:
欲於SQL Server Enterprise Manager建立資料表結構時建置,可在指定運算欄位的名稱後,於[公式]文字方塊中鍵入該運算欄位的運算式。必須注意的是!不需要去指定運算欄位的資料型態,因為當資料表的結構存檔時SQL Server會自動決定運算欄位的資料型態。

運算欄位其使用上的限制如下:
    運算欄位不能是FOREIGN KEYDEFAULTNOT NULL等條件約束的一部分。
    INSERTUPDATE命令敘述中,不能去更新運算欄位的內容。


沒有留言:

用頭腦去思考,不要人云亦云才好, 宗教信徒就是依賴與自私心態(求東求西)的人, 光是這點就很容易暴露弱點了, 難怪seafood吃飽飽,哈哈。 續上, 除了依賴與自私心態(兩者都是人性)之外。 另外也有很大一部份的人,是人云亦云的思考邏輯, 所以宗教才能譁眾取寵。