Please start any new threads on our new
site at https://forums.sqlteam.com. We've got lots of great SQL Server
experts to answer whatever question you can come up with.
Author |
Topic |
jeusdi
Starting Member
27 Posts |
Posted - 2008-01-09 : 09:42:25
|
I need to update a table as @TINTES. The UPDATE operation has to update GRAVAT field to previous value.DECLARE @TINTES TABLE ( TINTA VARCHAR(32), GRAVAT INT, FITXA INT, DATA_FITXA DATETIME)INSERT INTO @TINTES VALUES ('yellow', 1, 1, '2008-01-09')INSERT INTO @TINTES VALUES ('blue', 2, 1, '2008-01-09')INSERT INTO @TINTES VALUES ('red', 3, 1, '2008-01-09')INSERT INTO @TINTES VALUES ('black', 3, 1, '2008-01-09')INSERT INTO @TINTES VALUES ('yellow', NULL, 1, '2008-01-10') <<-- After UPDATE, NULL = 1INSERT INTO @TINTES VALUES ('blue', NULL, 1, '2008-01-10')<<-- After UPDATE, NULL = 2INSERT INTO @TINTES VALUES ('red', NULL, 1, '2008-01-10')<<-- After UPDATE, NULL = 3INSERT INTO @TINTES VALUES ('orange', NULL, 1, '2008-01-09')How Can I update these values using an UPDATE sentence?Thanks for all in advanced. |
|
khtan
In (Som, Ni, Yak)
17689 Posts |
Posted - 2008-01-09 : 09:48:33
|
[code]UPDATE tSET GRAVAT = (SELECT TOP 1 GRAVAT FROM @TINTES x WHERE x.TINTA = t.TINTA AND x.DATA_FITXA < t.DATA_FITXA ORDER BY DATA_FITXA DESC)FROM @TINTES tWHERE GRAVAT IS NULL[/code] KH[spoiler]Time is always against us[/spoiler] |
 |
|
|
|
|
|
|