高手快帮帮我
描述如下: 
 sql   1: 
 select   substr(b.operdatedate,1,10)    'time ' 
 from   card_sale_note   d,   card_sale_card      b,      card_type   c    
 where   (d.id   =   b.id   and      d.if_new_card   =   b.if_new_card 
 and   b.if_exit_card   is   null   and   b.type_id   =   c.type_id) 
 and   date(b.operdatedate)> =date( '2006-07-27   00:00:00 ') 
 and   date(b.operdatedate) <=date( '2007-07-27   23:59:59 ') 
 group   by   substr(b.operdatedate,1,10)      order   by      substr(b.operdatedate,1,10)   asc 
 返回为 
          time 
 2007-07-12 
 2007-07-25 
 2007-07-26   
 sql   2: 
 select   *   from   good_day_money   where   moneyOne   >     '0.000 ' 
 返回为 
       day                  moneyOne                     moneyTwo 
 2006-8-1         11111                                 11111 
 2006-8-2         22222                                 22222 
 2007-7-12      33333                                 33333 
 2007-7-25      44444                                 44444 
 2007-7-26      55555                                 55555     
 问题: 
 我如何才能在sql   1中把sql   2中查到的记录,但sql   1没有包含近来的,包含近来啊?
------解决方案--------------------有人看得明嘛??
------解决方案--------------------substr有这函数吗?
------解决方案--------------------//??
------解决方案--------------------select a.day 
   from good_day_money a 
   left outer join  
 ( 
 select substr(b.operdatedate,1,10)  'time ' 
 from card_sale_note d, card_sale_card  b,  card_type c  
 where (d.id = b.id and  d.if_new_card = b.if_new_card 
 and b.if_exit_card is null and b.type_id = c.type_id) 
 and date(b.operdatedate)> =date( '2006-07-27 00:00:00 ') 
 and date(b.operdatedate) <=date( '2007-07-27 23:59:59 ') 
 group by substr(b.operdatedate,1,10)  
 ) b 
        on a.day = b.time