sql server - How To Query Order By Desc StartDate But NULLS First -
create table [student_master] ( [user_id] [int] identity (1, 1) not null constraint student_master_p_key primary key, [name] [varchar] (50), [start_date] [varchar] (50), [priority] [varchar] (50) ) insert student_master values('john','2013-08-16','4') insert student_master values('jack','2013-08-10','') insert student_master values('mack','','1') insert student_master values('ack','2013-08-15','2') //sql query select row_number() on (order case when student_master.start_date null 1 when student_master.priority null 1 else 0 end,student_master.start_date desc ,student_master.priority desc )as rownumber,student_master.start_date student_master how query order desc start date , null value first
order case when start_date = '' 0 else 1 end asc, start_date desc you use isnull, column not have null values - has empty strings intead.
and problem - because start_date column varchar, not datetime perform string, alphabetical sort instead of datetime sorting.
Comments
Post a Comment