OracleÖÐSQL±àд¼¯½õ
1¡¢ÊµÏÖÐÐÁж¯Ì¬×ª»»£¬³£ÓÃÓÚÖ÷´Ó±í¹ØÁªÊ±µÄÌØÊâÐèÇó
select rwbm,psqh,
max(decode(xh1,1,yy))JKYL1,
max(decode(xh1,2,yy))JKYL2,
max(decode(xh1,3,yy))JKYL3,
max(decode(xh1,4,yy))JKYL4,
max(decode(xh1,5,yy))JKYL5,
max(decode(xh1,1,sz))RZSL1,
max(decode(xh1,2,sz))RZSL2,
max(decode(xh1,3,sz))RZSL3,
max(decode(xh1,4,sz))RZSL4,
max(decode(xh1,5,sz))RZSL5
from(
select a.*,row_number()over(partition by rwbm,psqh order by xh)xh1
from JC_CSD_SJCSCTZK a
where pz is not null
)group by rwbm,psqh
2¡¢¹ý³Ì±àдʱ½øÐзÖÀà´¦Àí
create or replace procedure [¹ý³ÌÃû]([²ÎÊý1] in [ÀàÐÍ],[²ÎÊý2] in [ÀàÐÍ]) is
CN NUMBER(1):=0; --ÊÇ·ñÒѾ´æÔÚ
begin
FOR X IN ([´ýµ¼³öÊý¾Ý²éѯSQL])
LOOP
FOR Y IN (select count(*) TS from [Åжϵ¼Èë±í¶ÔÓ¦Êý¾Ý´æÔÚ])
LOOP
CN := Y.TS; --ÒÑ´
Ïà¹ØÎĵµ£º
1£¬oracle tools£ºOUI¡¢DBCA¡¢OEM¡¢SQL*PLUS¡¢NETCA¡¢µÚÈý·½¹¤¾ß£¨toad¡¢PL\SQL developer£©
2£¬¿ÉʹÓÃresponsefile¿ìËÙȥͼÐΰ²×°oracle£¬ÔÚÔ´°²×°Îļþ/responseÀïÃæÓÐһЩģ°åÅäÖÃrpsÎļþ
3£¬Ô¤ÖÃÓû§ÊÇsysÓû§ÓësystemÓû§£ºsysÊÇoracleÊý¾Ý¿â
ÖÐȨÏÞ×î¸ßµÄÕʺţ¬¾ßÓÐcreate
databaseµÄȨÏÞ£¬¶øsystemûÓÐÕâ¸öȨÏÞ£ ......
OracleÖ´ÐÐÍⲿÎļþ£º
c:>sqlplus user/pwd@db
sql>@new.sql
Ö´Ðжà¸ösqlÎļþ:
1.°ÑËùÓеÄÎļþ¶¼·ÅÔÚͬһ¸öĿ¼Ï£¬È»ºóÔÚÃüÁîÐÐÀïÖ´ÐÐÃüÁ
c:>dir/b > d:\1.sql
»á°ÑËùÓеÄsqlÎļþÃû¶¼Êä³öµ½Ò»¸ösqlÎļþÖС£
2.ÓÃUltraEdit´ò¿ªÉú³ÉµÄ ......
create or replace procedure proc_test
( a in number, b out number )
as
begin
b:=a+1;
end proc_test;
ÏÖÔÚÒªµ÷Óõϰ¾ÍÊÇÕâÑù
SQL> c number;
SQL>exec proc_test(1,:c);
ǧÍòҪעÒâ±ðÍüÁËдðºÅ ......
¶ÔÓÚORACLEÊý¾Ý¿âµÄÊý¾Ý´æÈ¡£¬Ö÷ÒªÓÐËĸö²»Í¬µÄµ÷Õû¼¶±ð£¬µÚÒ»¼¶µ÷ÕûÊDzÙ×÷ϵͳ¼¶°üÀ¨Ó²¼þƽ̨,µÚ¶þ¼¶µ÷ÕûÊÇORACLE RDBMS¼¶µÄµ÷Õû,µÚÈý¼¶ÊÇÊý¾Ý¿âÉè¼Æ¼¶µÄµ÷Õû,×îºóÒ»¸öµ÷Õû¼¶ÊÇSQL¼¶¡£Í¨³£ÒÀ´ËËļ¶µ÷Õû¼¶±ð¶ÔÊý¾Ý¿â½øÐе÷Õû¡¢ÓÅ»¯£¬Êý¾Ý¿âµÄÕûÌåÐÔÄÜ»áµÃµ½ºÜ´óµÄ¸ÄÉÆ¡£ÏÂÃæ´Ó¼¸¸ö²»Í¬·½Ã ......
OracleÖеĴ洢¹ý³ÌºÍÓαê:
select myFunc(²ÎÊý1,²ÎÊý2..) to dual; --¿ÉÒÔÖ´ÐÐһЩҵÎñÂß¼
Ò»:OracleÖеĺ¯ÊýÓë´æ´¢¹ý³ÌµÄÇø±ð:
A:º¯Êý±ØÐëÓзµ»ØÖµ,¶ø¹ý³ÌûÓÐ.
B:º¯Êý¿ÉÒÔµ¥¶ÀÖ´ÐÐ.¶ø¹ý³Ì±ØÐëͨ¹ýexecuteÖ´ÐÐ.
C:º¯Êý¿ÉÒÔǶÈëµ½SQLÓï¾äÖÐÖ´ÐÐ.¶ø¹ý³Ì²»ÐÐ.
ÆäʵÎÒÃÇ¿ÉÒÔ½«±È½Ï¸´ÔӵIJéѯд³Éº¯Êý.È»ºóµ½´æ´¢¹ý³Ì ......