create table tb(id int,date datetime)
insert tb(id) values(1)
insert tb values(2,'2007-10-01')
insert tb(id) values(3)select * from tb where date is not nullselect * from tb where date is nulldrop table tb/*
id          date                                                   
----------- ------------------------------------------------------ 
2           2007-10-01 00:00:00.000(所影响的行数为 1 行)id          date                                                   
----------- ------------------------------------------------------ 
1           NULL
3           NULL(所影响的行数为 2 行)
*/

解决方案 »

  1.   

    create table tb(id int,date datetime)
    insert tb(id) values(1)
    insert tb values(2,'2007-10-01')
    insert tb(id) values(3)select id,date=isnull(date,getdate()) from tbdrop table tb/*
    id          date                                                   
    ----------- ------------------------------------------------------ 
    1           2007-12-29 12:47:23.833
    2           2007-10-01 00:00:00.000
    3           2007-12-29 12:47:23.833(所影响的行数为 3 行)
    */
      

  2.   

    create table tb(id int,date datetime)
    insert tb(id) values(1)
    insert tb values(2,'2007-10-01')
    insert tb(id) values(3)select id, date=isnull(date, getdate()) from tb /*
    id          date
    ----------- -----------------------
    1           2007-12-29 12:40:43.177
    2           2007-10-01 00:00:00.000
    3           2007-12-29 12:40:43.177(3 row(s) affected)
    */drop table tb
      

  3.   

    create table tb(id int,date datetime)
    insert tb(id) values(1)
    insert tb values(2,'2007-10-01')
    insert tb(id) values(3)select case when [date] is null then getdate() else [date] end as [date]
    from tb/*
    date                                                   
    ------------------------------------------------------ 
    2007-12-29 12:42:45.493
    2007-10-01 00:00:00.000
    2007-12-29 12:42:45.493(所影响的行数为 3 行)
    */
    drop table tb
      

  4.   


    select isnull(LocalTime,getdate())[LocalTime] from 表名
    --or
    select case when LocalTime is null then getdate() else LocalTime end [LocalTime] from  表名