oracleÓαêÎÊÌ⣬Á¬ÐøÁ½Ìõ¼Ç¼±È½Ï
Ò»¸ö´¢´æÐÅÓÿ¨½»Ò׼ǼµÄ±ítable1,Ò»¸öÖ÷¼ü£¬Ò»¸ö¿¨ºÅµÄÍâ¼ü£¬»¹ÓÐ3ÁÐÊôÐÔ£¬·Ö±ðÊÇ ÐÅÓÿ¨¾ÉµÄÓà¶î£¬½»Ò×½ð¶î£¬¿¨µÄеÄÓà¶î£º
transactionID PK£¬
card ID FK,
old_value,
transaction_amount,
new_value
ÎÒÏÖÔÚµÄÎÊÌâÊÇ£ºÐèÒªÕÒ³öÓÐÆÛÕ©¿ÉÄܵÄÄÇЩ¼Ç¼£¬±ÈÈç˵£¬¶ÔÓÚÒ»ÕÅÐÅÓÿ¨À´Ëµ£¬°ÑËüËùÓеÄÏû·Ñ¼Ç¼°´ÕÕʱ¼äÅÅÐò£¬Ò»Ìõ¼Ç¼µÄ¿¨µÄ¾ÉÓà¶î²»Äܳ¬¹ýÉÏÒ»Ìõ¼Ç¼µÄеÄÓà¶î
tansactionID | cardID | old_value | amount | new_value
--------------------------------------------------------
1£¬ 001£¬ 500£¬ 100£¬ 400
2£¬ 001£¬ 400£¬ 50£¬ 350
3£¬ 001£¬ 1000£¬ 300£¬ 700
ÕâÀïµÚÈýÌõ¼Ç¼¾ÍÊÇÎÒÒªÕÒµÄÁË£¬ËüµÄ¾ÉÓà¶î±ÈÉÏÒ»Ìõ¼Ç¼µÄÐÂÓà¶îÒª¶à£¬ËùÒÔÓÐÆÛÕ©µÄ¿ÉÄÜÐÔ¡£
Ó¦¸ÃÊÇÓÃÓαê°É£¿¸ÃÔõÃ´Ð´ÄØ£¿Ð»Ð»´ó¼Ò
²¹³ä£ºÕâÀï²»¿¼ÂÇ¿¨µÄ³åÖµ»òÕß´æÇ®µÄÇé¿ö£¬Ö»¿¼ÂÇÏû·ÑÇé¿ö
°´Ê±¼äÅÅÐò£¬ÊÇ·ñµÈͬÓÚ°´tansactionidÅÅÐò£¿
²»Ò»¶¨ÒªÓÃÓαê
ÊÔÊÔ
select * from(
select t.*,lag(new_value)over(partition by cardid order by tansactionid)lg
from table1 t)
where old_value>lg
ºÇºÇ£¬ÔÚ²¹³äÏ£¬ÕâÕűíÀﻹÓÐÿÌõ½»Ò׼ǼµÄʱ¼ä£¬ËùÒÔ¿ÉÒÔ°´½»Ò×ʱ¼äÀ´ÅÅÐò
ÄÇÄã¾Í½«order byºóÃæµÄ×ֶλ»³É½
Ïà¹ØÎÊ´ð£º
µ¼³ö¡¢µ¼Èë¶¼ÊÇ oracle 10g ¡£
ÔÚµ¼Èë¹ý³ÌÖгöÏÖÈçÏÂÇé¿ö£º
IMP-00017: ÓÉÓÚ ORACLE ´íÎó 6550, ÒÔÏÂÓï¾äʧ°Ü:
"DECLARE SREC DBMS_STATS.STATREC; BEGIN SREC.MINVAL := '4E014E50 ......
Óиö´æ´¢¹ý³ÌÓÐÈý¸öInt²ÎÊýºÍÒ»¸öOut²ÎÊý.
Ö´ÐÐʱÏȽ«Ò»Ð©Êý¾Ý²åÈëµ½Ò»¸ö±íÖÐ.È»ºóÔÙ´Ó±íÖÐÈ¡³öÊý¾Ý½øÐÐÐÐתÁÐ,ºÏ¼ÆµÈÂß¼.½«´¦Àí½á¹û·Åµ½Ò»¸ö±íÖÐ.²¢½«Idͨ¹ýOut²ÎÊý·µ»Ø.
µ«ÔÚÖ´ÐÐʱ¿ÉÒÔ»ñÈ¡µ½OutÖµ,µ«¾ÍÊÇà ......
±¾À´ÒªÐ´¸öupdateÓï¾ä
update table_a A
set A.flag=1
where A.id in (select B.id from table_b B)
½á¹ûÎóд³É
update table_a A
set A.flag=1
where ......
ƽʱ¶¼ÊÇÁ¬½ÓMSSQL û̫עÒâÕâ¸öÎÊÌâ..½ñÌìÒòΪÐèÒª.ÔÚÍøÉÏÕÒÁËÒ»ÏÂ..Óкöà.. ¶¼ÊÔÁË.²»ÐÐ
ºÜ¶à¶¼ÊDZ¨:
δ´¦ÀíµÄÒì³£;System.Exception System.Data.OracleCilent ÐèÒª Oracle ¿Í»§¶ËÈí¼þ 8.1. ......