在SQL Server 2008中创建计算列

Pho*_*per 26 calculated-columns sql-server-2008

我有一个SQL Server 2008数据库.该数据库有一个名为"Book"的表."Book"具有以下属性:

  • ID(int)
  • 标题(nvarchar(256))
  • PublishDate(datetime)

我需要创建一个名为"AgeInMinutes"的计算列.我对计算列不是很熟悉.我理解这个概念,但我不知道该怎么做.在SQL Server Management Studio的"列属性"区域中,我在"表设计器"部分中看到一个名为"(公式)"的属性.我想我需要在这里输入我的计算.但是,我不知道该放什么.有人能帮帮我吗?

谢谢!

JNK*_*JNK 42

您可以在以下位置定义列CREATE TABLE:

AgeInMinutes as (DATEDIFF(minute, PublishDate, GETDATE())

或者,就这样做

ALTER TABLE Book
ADD AgeInMinutes as (DATEDIFF(minute, PublishDate, GETDATE())
Run Code Online (Sandbox Code Playgroud)

  • 我认为值得明确的是,在CREATE TABLE定义中,您没有指定数据类型.起初我忽略了这一点. (4认同)