Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

sqlÓï¾äÇóÖú - MS-SQL Server / »ù´¡Àà

A±í´æÔÚͬһ¸öidµÄ¶àÌõ¼Ç¼£¬°´Ê±¼ä¶à´Î³öÏÖ£¬B±íÓëA±íÒÔid¹ØÁª£¬µ«ÊÇÎÒÏëÈ¡³öA±íidÊ״γöÏÖµÄʱ¼äÒªÔçÓÚB±íµÄʱ¼ä¡£
A±íÓÐ:id,time
È磺
1,2010-01-01 00:00:00
2,2010-01-02 00:00:00
2,2010-01-03 00:00:00
3,2010-01-04 00:00:00
3,2010-01-05 00:00:00
3,2010-01-06 00:00:00
B±íÓÐ:id,time1
È磺
1,2010-02-01 00:00:00
2,2010-02-01 00:00:00
3,2010-02-01 00:00:00
ÏëÒªµÄ½á¹ûÊÇ£º
1,2010-01-01 00:00:00
2,2010-01-02 00:00:00
3,2010-01-04 00:00:00
ÓÐË­ÖªµÀ£¿¼±£¬Ð»Ð»

SQL code:
select A.* from A where time <(select min(time1) from B where B.id=A.id)


Ê×´Î
select A.id,min(time) [time] from A where time <(select min(time1) from B where B.id=A.id)


Â¥Ö÷Âé·³ÄãÄܲ»ÄÜдµÃÇå³þµã£¬ÎÒÊǸöÐÂÊÖ,лл¡£

ÒýÓÃ
Â¥Ö÷Âé·³ÄãÄܲ»ÄÜдµÃÇå³þµã£¬ÎÒÊǸöÐÂÊÖ,лл¡£
Äã¾ÍÊÇÂ¥Ö÷

select A.id,min(time) [time] from A where time <(select min(time1) from B where B.id=A.id)
group by a.id

ÓÃ4Â¥Êý¾Ý£¬ÔÚÓÃÉÏÃæÓï¾ä¾Í¿É¼ûµ½½á¹û

;WITH T AS
(
  SELECT * from A T WHERE EXISTS(SELECT 1 from B WHERE id=T.id AND T.time<time1)
)
SELECT * from T A WHERE NOT EXISTS(SELECT 1 from T WHERE id=A.id AND time<A.time)
ÎÒ¿´²»Ì«¶®

ÒýÓÃ
;WITH


Ïà¹ØÎÊ´ð£º

csvÎļþת»»³Ésqlµ¼Èëµ½Êý¾Ý¿â£¬Ã»ÓÐÊý¾ÝΪºÎ£¿

Ö´ÐеÄ˳Ðò£º
1£©Îļþä¯ÀÀ¿ò£¨Ñ¡ÔñÎļþʹÓã©
Ñ¡ÔñºÃÎļþºó
µã»÷Ò»¸öµ¼Èë°´Å¥µÄʱºò £¬°ÑÉÏÃæÉÏ´«¿òÀïµÄcsvÎļþÒÔÒ»¸öIDΪÎļþÃû£¬ÉÏ´«µ½**/**Îļþ¼ÐÏÂ
2£©¶ÁÈ¡Õâ¸öÎļþ¼ÐϵÄcsvµÄÎļþ£¬×ª»»³Ésql
3 ......

Çë½ÌsqlÓï¾ä¡£ - Oracle / ¿ª·¢

ÎÒÓÐÒ»¸ö±í£¬½á¹¹ÊÇÕâÑù¡£
  ת³ö µ¥Î» תÈ뵥λ ±ÊÊý ½ð¶î
date(Ö÷) outid(Ö÷) inid(Ö÷) num amt
2009 1 2 1 500 Ϊ 1 µ¥Î» ÔÚ2009Ä ......

SQLÈçºÎÓÅ»¯ÎÊÌâ - MS-SQL Server / ÒÉÄÑÎÊÌâ

½ñÌì×öÁËÒ»¸ö´æ´¢¹ý³Ì   »·¾³ÊÇSQL2000Êý¾Ý¿â  
´óÖÂÈçÏÂ
½¨Á¢ÁÙʱ±í
¶¨ÒåÔ±¹¤Óαê
        Ñ­»·Ô±¹¤£¨ÊôÓÚ1¸ö¹«Ë¾)  
        ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ