sqlÎÊÌâ¡£ - Oracle / »ù´¡ºÍ¹ÜÀí
Ö÷±í A ÖУ¬¶ÔÓ¦B±íÓжàÌõÊý¾Ý ͨ¹ýB±íµÄmid ÓëA±í¹ØÁª¡£B±íÓиö×Ö¶Îstate£¬Ö»ÓÐstateȫΪ1ʱ²Å½«A±íÖеÄstate ÉèΪ1.
½á¹¹»ù±¾ÈçÏ£º
A
ID state
1 0
B
ID MID state
1 1 1
2 1 1
3 1 1
×îºóµÄ½á¹ûÐèÒª¡£
AID Astate
1 1
Ò»Ìõsql¿ÉÒÔʵÏÖÂð
SQL code:
create table a (id int,state int)
insert into a values(1,0)
create table b (id int,mid int,state int)
insert into b values(1,1,1)
insert into b values(2,1,1)
insert into b values(3,1,1)
update a set state=1
from a
where exists(select 1 from b where a.id=b.mid and state=1)
select * from a
id state
1 1
Ŷ¡£ÎÒÐèÒªÒ»Ìõ²éѯsql£¬£¬a±íÖеÄÖµ²»±ØÐ޸ġ£
SQL code:
UPDATE a
SET a.state =
(SELECT MIN(nvl(b.state, 0)) from b WHERE b.mid = a.id)
WHERE EXISTS (SELECT 1 from b WHERE b.mid = a.id);
SQL code:
--»òÕßÕâ¸ö
UPDATE a
SET a.state =
(SELECT case when COUNT(1)>0 then 0 else 1 end
from b
WHERE b.mid = a.id AND
a.id != 1)
WHER
Ïà¹ØÎÊ´ð£º
´ó¼ÒºÃ,ÎÒÏÖÔÚ°Ñoracle·þÎñÆ÷ÉÏÃæµÄÔʼÎļþ,ÏÂÔص½±¾»úÁË.ÎÒÏëÔÚ±¾»ú·ÃÎÊÊý¾Ý¿âÔõôÉèÖð¡.ÊDz»ÊÇÀàËÆ¿ÉÒÔ½¨Á¢Ò»¸öʲôÐéÄâ·þÎñÆ÷À´ÊµÏÖ.Çë´ó¼Ò³ö³öÖ÷Òâ
ÒýÓÃ
´ó¼ÒºÃ,ÎÒÏÖÔÚ°Ñoracle·þÎñÆ÷ÉÏÃæ ......
ÎÒÓÐÒ»¸ö±í£¬½á¹¹ÊÇÕâÑù¡£
ת³ö µ¥Î» תÈ뵥λ ±ÊÊý ½ð¶î
date(Ö÷) outid(Ö÷) inid(Ö÷) num amt
2009 1 2 1 500 Ϊ 1 µ¥Î» ÔÚ2009Ä ......
ÎÒÔÚ¿ª·¢µÄÕâ¸öÓ¦Óò¢·¢ÐԱȽϸߣ¬oracle¸üÐÂÊý¾ÝʱºòÈçºÎ´¦Àí²¢·¢´¦ÀíÄØ£¿¸÷λ´óÏÀ·¢±íºÃµÄ¹Ûµã°¡£¬ÔÚÏߵȴý£¡
oracleÊý¾Ý¸üÐÂʱ£¬»á×Ô¶¯Ä¬ÈÏÐÐËø¶¨£¬Â¥Ö÷²»Òª²ÙÐÄ£¬Oracle¶Ô²¢Ðд¦ÀíÒѾºÜ³ÉÊìÁË
ÒýÓÃ
oracle ......
ÏÖÔÚÓÐÁ½ÕÅ±í£ºÎÄÕÂÖ÷±íA(articleId,articleTitle)£¬ÎÄÕÂÆÀÂÛ±íB(commentId,articleId,commentTitle)
ÏÖÔÚÎÒÏëʵÏÖÕâÑùµÄ¹¦ÄÜ£ºÁгöÎÄÕÂÁÐ±í£¬ÆäÖÐÿƪÎÄÕ±êÌâÏÂÃæÁгö´ËÎÄÕµÄÇ°2¸öÎÄÕÂÆÀÂÛ£¬ÇëÎÊsqlÓï¾äÔõôд°¡ ......
×Ö¶Î1,×Ö¶Î2.....×Ö¶ÎN,Status,ParentID
1,Name1....test1,1,99
1,Name1....test1,3,99
1,Name2....test2,1,101
1,Name2....test2,3,101
1,Name3....test3,2,101
1,Name1....test1,4,101
ÏëÒªµÄ½á¹ûÊÇ:
1,Na ......