Skip to content

Similarities and Differences Between NEWID and NEWSEQUENTIALID System Functions

System functions are functions that perform operations on and return information about values, objects, and settings in SQL Server. Two of these system functions are the NEWID and the NEWSEQUENTIALID functions. The NEWID() system function creates a unique value of type UNIQUEIDENTIFIER. On the other hand, the NEWSEQUENTIALID() system function creates a GUID that is greater than any GUID previously generated by this function on a specified computer since Windows was started.

The following article shows the similarities and differences between the NEWID function and the NEWSEQUENTIALID function.

Similarities

  • Both system functions do not accept parameters and both return a value of UNIQUEIDENTIFIER**` type.
  • Both system functions are nondeterministic, meaning they may return different results each time they are called.
  • Both system functions can be used with the DEFAULT constraint on table columns of type UNIQUEIDENTIFIER.
  • The GUID generated by both system functions is unique on that computer.

Differences

NEWID NEWSEQUENTIALID
The use of the NEWID system function is not limited to the DEFAULT constraint. It can be assigned to local variables or inserted as a column value. Can only be used with the DEFAULT constraints on table columns of type UNIQUEIDENTIFIER
Can be referenced in queries. Cannot be referenced in queries.
GUID generated is totally random and sequence cannot be determined. GUID created is always greater than any GUID previously generated by this function on a specified computer since Windows was started.
When used in DEFAULT expressions, it can be combined with other scalar operators such as passing it as a parameter to a scalar function. When used in DEFAULT expressions, it cannot be combined with other scalar operators such as passing it as a parameter to a scalar function.