SQL Server: заинтригован GETDATE ()

I have SQL Server 2005 Standard Service Pack 2 9.00.4053.00 (Intel X86)

Table has close to 30 million rows..

If I do

SELECT GETDATE(), * FROM

Identical Date and time value is returned including milliseconds part.. though query took more then 3 minutes to complete...

I have already read

http://sqlblog.com/blogs/andrew_kelly/archive/2008/02/27/when-getdate-is-not-a-constant.aspx

http://social.msdn.microsoft.com/Forums/en-US/transactsql/thread/66507b8b-4a74-44c1-9637-3ab5f75db6a0

One of the link I posted (marked answer) suggest that prior to SQL 2005 GETDATE was deterministic хотя в SQL 2000 BOL говорится, что GETDATE недетерминирован

Если я сделаю обновление с миллионами строк

UPDATE tableName
SET dateColumn = GETDATE()

, я знаю, что вы действительно хотите это сделать

DECLARE @DT datetime
SET @DT = GETDATE()
UPDATE table
SET datecol =@DT

Я действительно сбит с толку

Каково будет ожидаемое поведение?

  1. В случай оператора select, который я опубликовал ранее
  2. Поведение оператора update

Учитывая, что вы обновляете datecolun для таблицы с 100 миллионами строк Would datecolumn will have identical date and time in milliseconds....?

9
задан gbn 1 September 2010 в 16:53
поделиться