테이블에 두 개의 열이 있다고 가정합니다. 한 열에 하나의 열을 넣으려고하면 값이 자동으로 다른 열에도 있어야합니다. 하지만 성능 때문에 트리거를 사용하고 싶지 않습니다.기본적으로 다른 열에 삽입하는 동안 자동으로 한 열에 삽입합니다.
이 제발 도와주세요 그는 데이터 형식 후 "표현"을 사용하는 새 열을 추가하는 동안
나는 몇 곳을 보았다.테이블에 두 개의 열이 있다고 가정합니다. 한 열에 하나의 열을 넣으려고하면 값이 자동으로 다른 열에도 있어야합니다. 하지만 성능 때문에 트리거를 사용하고 싶지 않습니다.기본적으로 다른 열에 삽입하는 동안 자동으로 한 열에 삽입합니다.
이 제발 도와주세요 그는 데이터 형식 후 "표현"을 사용하는 새 열을 추가하는 동안
나는 몇 곳을 보았다.계산 된 열이라고합니다. 열을 생성한다
이 예는 다른 두 개의 컬럼 (QtyAvailable 단가 및 )에 기초한 값을 포함 할 것이다 (InventoryValue불림).
에서 : https://msdn.microsoft.com/en-us/library/ms188300.aspx
CREATE TABLE dbo.Products
(
ProductID int IDENTITY (1,1) NOT NULL
, QtyAvailable smallint
, UnitPrice money
, InventoryValue AS QtyAvailable * UnitPrice
);
참고 :
의 값 InventoryValue이되지 삽입/업데이트시, SELECT 시간에 계산됩니다. INSERT-time에 계산되도록하려면 PERSISTED로 표시해야합니다. 이것은 getdate 함수를 계산에 사용하는 경우 특히 중요합니다.
CREATE TABLE dbo.Products
(
ProductID int IDENTITY (1,1) NOT NULL
, QtyAvailable smallint
, UnitPrice money
, InventoryValue AS QtyAvailable * UnitPrice PERSISTED
);
색인 및 외래 키에 영구 계산 열을 사용할 수 있습니다.
'InventoryValue'가 select에 계산되고, insert/update에 계산되지 않는다고 덧붙이세요. – Bacs
CREATE TABLE dbo.tbl
(
ID int
, col2 AS ID)
왜 두 개의 동일한 열을 갖고 싶습니까? 어떤 종류의 RDBMS 디자인입니까? –
기본값에 대해 이야기하고 있습니까? –
질문을 편집하여 명확하게 편집 할 수 있습니까? 동일한 값을 두 개의 열에 넣으려는 것이지만 이전 의견에서 생각한 것만 큼은 아닙니다. – Bacs