ho SQL Server 2005 Service Pack 2 standard 9.00.4053.00 (Intel X86)SQL Server: incuriosito da GETDATE()
Tabella ha quasi 30 milioni di righe ..
Se faccio
SELECT GETDATE(), * FROM
<table>
Identico valore di data e ora viene restituito compreso millisecondi parte .. se interrogazione ha preso più di 3 minuti per completare ...
Ho già letto
http://sqlblog.com/blogs/andrew_kelly/archive/2008/02/27/when-getdate-is-not-a-constant.aspx
Uno dei link che ho postato (risposta marcata) suggeriscono che prima di SQL 2005 GETDATE era deterministico anche se SQL 2000 BOL afferma GETDATE è non deterministico
Se faccio un aggiornamento con milioni di righe
UPDATE tableName
SET dateColumn = GETDATE()
So che vuoi veramente fare
DECLARE @DT datetime
SET @DT = GETDATE()
UPDATE table
SET datecol [email protected]
Sono molto confuso
comportamentoquanto ci si aspetterebbe?
- In caso di select che ho postato in precedenza
- Comportamento di aggiornamento dichiarazione
Considerando che si sta updateing un datecolun su un tavolo con 100 milioni di righe Would datecolumn avrà la data identico e l'ora millisecondi ....?
Grazie, ma perché non NEWID si comporta diversamente? selezionare Home 4 newid(), newid() da sys.objects – cshah
Ora capisco come se si vuole restituire le righe in modo casuale poi ORDER BY NEWID() modo newid() è diverso ... – cshah
Che cosa si comporterebbe l'aggiornamento stesso? vale a dire. UPDATE tableName SET dateColumn = GETDATE() OK sarà lo stesso .. stupido :-( – cshah