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

ÇóÒ»¸öSQLÓï¾äµÄд·¨

CREATE TABLE test (a CHAR(10), b INT)
INSERT INTO test
SELECT 'aaa',20
INSERT INTO test
SELECT 'bbb',20

ĿǰÓöµ½Ò»¸öÎÊÌ⣬Ïë¼õÈ¥Ò»¶¨µÄ½ð¶î£¬°´ÕÕÒ»¶¨µÄ˳Ðò£¬×ß×îºóÒ»¸ö¿ªÊ¼¼õÈ¥£¬ÀýÈ磬100¿é£¬ÏȼõÈ¥aaaµÄ£¬È»ºóʣϵÄ80¼õÈ¥bbbµÄ£¬ÊÔ×ÅÓÃwhileÓï¾äÀ´×ö£¬µ«ÊDz»ÖªµÀÔõôдÅжÏÓï¾äÈÃÆä¼õµ½0×Ô¶¯Í˳ö¡£ÕâÀïÇë½ÌϸßÊÖ£¬Ð»Ð»£¡
ɶÒâ˼?


.

àÅ£¬¾ÍÊÇÒ»¸ö±í£¬×Ö¶ÎA´ú±íÃû³Æ£¬B×ֶδú±í½ð¶î¡£ÏÖÔÚÐèÒª¼õÈ¥Ò»¶¨µÄ½ð¶î£¬±ÈÈç100£¬ÄÇôÕâ100ÏȽøÈ¥µÚÒ»¸öÈ˵Ľð¶î£¬È»ºóʣϵÄÈç¹û>=0£¬Ôò¼ÌÐøÍùÏÂÒ»¸öÈ˵Ľð¶î¼õ£¬Ò»Ö±µ½0Ϊֹ£¬ºÇºÇ£¬²»ÖªµÀÕâô½âÊÍÃ÷°×Âð

whhile ¡£¡£
begin
  Ö´ÐдúÂë
if ×îºóµÄÖµ <=0  break

end

        up....  ..                           


лл£¬»ù±¾ÊÇÕâ¸ö£¬¶ÔÓα껹ÊDz»ÊìϤ@@¡£½á·Ö¡£
fetch next from cur into @a,@b
IF @b <=@sum
  BEGIN
  UPDATE test SET b=0 WHERE a=@a
  END
ELSE
UPDATE test SET b=@b-@sum WHERE a=@a
set @sum=@sum-@b
SELECT @sum


Ïà¹ØÎÊ´ð£º

sqlÐÔÄÜÇóÖú - MS-SQL Server / ÒÉÄÑÎÊÌâ

³¡¾°ÈçÏ£º
¿Í»§°Ñ±¸·ÝºÃµÄÊý¾Ý¿â£¬·¢¸øÎÒ£¬ÎÒÔÚ±¾»ú»¹Ô­ºó£¬ÔËÐÐдºÃµÄ´æ´¢¹ý³Ì£¬±È½Ï¿ì£¬²¢ÇÒÔÚʵʩÄDZßÔËÐÐͬÑù±È½Ï¿ì¡£µ«Êǵ±ÊµÊ©ÔÚ¿Í»§ÄDZßÔËÐеÄʱºòËٶȾͷdz£µÄÂý£¬Ê±¼ä³¬³öÁ˳ÌÐòµÄʱ¼äÏÞÖÆ¡£Ô¶³ÌÔÚ¿Í»§ÄÇ ......

Êý¾ÝÒÔxml¸ñʽ·µ»Ø - MS-SQL Server / Ó¦ÓÃʵÀý

´ÓÊý¾Ý¿âÖвéѯһÕűíµÄÊý¾Ý
select ²¿ÃÅ,ÐÕÃû from tb
ÈçºÎ²ÅÄÜÉú³ÉÏÂÃæµÄxml¸ñʽ
XML code:
<folder state="unchecked" label="È«²¿">
¡¡¡¡ <folder state="unchecked&qu ......

sqlÓÅ»¯ - Oracle / »ù´¡ºÍ¹ÜÀí

select count(1) from FX_RETURNBOOKCHECKLIST fxreturnbo0_ where fxreturnbo0_.BOOKID='164 ' AND fxreturnbo0_.RETURNID='00025.S0000001' 
ÉÏÃæÒ»¸ö¼òµ¥µÄSQL,Ö´ÐÐʱ¼ä2.6à ......

ÇóÒ»SQL - MS-SQL Server / »ù´¡Àà

tab1 ×Ö¶Î:billdate,goodsid,incount,inmoney,outcount,outmoney,endprice,endcount,endamt
tab2 ×Ö¶Î:goodsid,goodskind£¨ÉÌÆ·ÀàÐÍ£©
tab3 ×Ö¶Î:goodskind£¨ÉÌÆ·ÀàÐÍ£©,kindname
½á¹û£º
µÃµ½ÉÌÆ·ÀàÐÍÔÚÒ»¶Îʱ¼ä ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ