我的表的結構如下:SQL語句從另一列更新三列
CREATE TABLE [dbo].[Ontledings](
[ont_ID] [int] IDENTITY(1,1) NOT NULL,
[plaasno] [varchar](50) NOT NULL,
[plaasnaam] [varchar](50) NOT NULL,
[blokno] [varchar](50) NOT NULL,
[plaasblok] [varchar](50) NULL,
[area] [varchar](50) NOT NULL,
[analisedatum] [date] NOT NULL,
[name3] [varchar](50) NULL,
[kultivar] [varchar](50) NOT NULL,
[wingklas] [varchar](50) NOT NULL,
[kultklas] [varchar](50) NULL,
[suiker] [real] NOT NULL,
[pH] [real] NOT NULL,
[suur] [real] NOT NULL,
[last] [date] NULL,
[secondlast] [date] NULL,
[thirdlast] [date] NULL,
CONSTRAINT [PK_Ontledings] PRIMARY KEY CLUSTERED
(
[ont_ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
更新前表如下所示(僅適用於相關的欄目包括):
對於每個那麼我需要根據analisedatum列(僅適用於當前年份)以該行的第三個,第二個和最後一個日期更新最後三列。這需要在plaasblok相同的所有行上完成。
得到的表應該是這樣的:
更新三列與日期?而對於一個共同的價值,原始表中的共同價值是什麼?你需要顯示你的數據結構或DDL。 –
首先編寫一個返回你想要的查詢。這是否會返回你想要的部分:'SELECT Plaasblok,MIN(analiseddatum)GROUP BY Plaasblok。請指定SQL Server的版本,因爲它看起來像wid夫功能會派上用場。 –