表a
id totime oid
1 2013-01-03 0001
1 2013-03-05 0002
1 2013-03-09 0003
2 9999-12-31 0004
3 2012-08-07 0005
现在需要进行如下更新
将表中每个id的日期最大的记录的totime 更新为当月最后一天,更新后的结果应该如下
id totime oid
1 2013-01-03 0001
1 2013-03-05 0002
1 2013-03-31 0003 --这条变
2 9999-12-31 0004
3 2012-08-31 0005 --这条变
æµè¯æ°æ®
create table aæ§è¡
update a set totime=last_day(totime) where oid in第ä¸è¡çselect 1 from æ¯ä»ä¹ææ
éè¦æ¹æä»ä¹
--ææ表å å段ååé½æç产系ç»ä¸çæ¹äºï¼è¿ä¸ª1éè¦æ¹å OIDæ¯16è¿å¶ç
ä½ åªæ¹è¡¨åå°±è¡ï¼é£ä¸ª1ä½ æ¢ä¸æ¢ï¼æè
æ¢æä»ä¹æ²¡å
³ç³»
å°±æ¯exists ,é£åè¾¹æ¯ä¸å¤§æ´å¥ï¼å¤ææ¥æå¦ææ¯æ¯ä¸ªidçæ大æ¥ææä¼æ´æ°ï¼å
¶å®ä½ è¿ä¸ªæåæ´æ°çæ¯3æ¡ï¼åå«æ¯ç¬¬3ï¼4ï¼5æ¡ï¼åªæ¯å 为第4æ¡æ大æ¥æåä»æ¬èº«ä¸è´èå·²
æ§è¡åå¤ä»½ä¸ä¸å表å§