Update Table Set Where MAX(ID)?

The first code works fine, just like to shorten a bit.

[Working code]
Declare @maxid As int;
Set @maxid = (Select MAX(ID) From Table1);
Update Table1 Set IsAlert = 1 Where ID = @maxid

[Short code attempt, not working]
Update Table1 Set IsAlert = 1 Where (Select MAX(ID) From Table1) != null)

Help!
pointemanAsked:
Who is Participating?
 
Jim HornMicrosoft SQL Server Developer, Architect, and AuthorCommented:
<knee-jerk answer>

UPDATE Table1
SET IsAlert = 1
WHERE ID IN (SELECT Max(ID) FROM Table1)
0
 
pointemanAuthor Commented:
Ahh, I also came up with code, only diff is '=' vs 'IN'

Update Table1 Set IsAlert = 1 Where ID = (Select MAX(ID) From Table1)
0
 
Jim HornMicrosoft SQL Server Developer, Architect, and AuthorCommented:
>only diff is '=' vs 'IN'
Performance-wise this is equivalent.  If the IN ( SELECT ...)  is a large number of rows then you'd want to JOIN it.
0
 
Jim HornMicrosoft SQL Server Developer, Architect, and AuthorCommented:
Thanks for the grade.  Good luck with your project.  -Jim
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.