Oracle´æ´¢¹ý³Ì£¬ÒÔÓαêµÄ·½Ê½·µ»ØÒ»¸ö¼Ç¼¼¯
--´´½¨Ò»¸ö°ü
create or replace package types
as
type cursorType is ref cursor;
end types;
--´´½¨´æ´¢¹ý³Ì,ÓαêÀàÐÍ·µ»Ø²ÎÊý
create or replace procedure SP_Fee_Instance(v_company in varchar, v_sdate in nvarchar2, v_edate in nvarchar2,p_cursor in out types.cursorType) is
-- vs_sql varchar2(2000);
--company varchar2(100); --¹«Ë¾±àÂë
--start_date varchar2(10); --¼Æ»®¸¶¿îʱ¼ä¶Î[Æð]
--end_date varchar2(10); --¼Æ»®¸¶¿îʱ¼ä¶Î[Ö¹]
begin
IF NVL(v_company,' ') <> ' ' THEN
OPEN p_cursor FOR
select a.company,a.pact_name,a.pact_code,i.payment_date,sum(i.payment_fee) as payment_fee,i.payment_condition,i.payment_remark
from htgl_pact_apply a
inner join htgl_fee_instance i on a.apply_id = i.apply_id
where a.payment_status=2
and a.company = v_company
and i.payment_date between to_date(v_sdate,'YYYY-MM-DD') and to_date(v_edate,'YYYY-MM-DD')
group by a.company,a.pact_name,a.pact_code,i.payment_date,i.payment_condition,i.payment_remark;
null;
-- dbms_output.put_line(company);
--
Ïà¹ØÎĵµ£º
http://www.inthirties.com/thread-757-1-1.html
ºÜÈÙÐÒ£¬±»ÑûÇëΪCSDNѧϰ´ó±¾ÓªÀïµÄOracleÀÏʦ¡£ÓиöÍøÓÑ·¢ÏûÏ¢¹ýÀ´£¬Ò»Æð̽ÌÖÈçºÎѧϰOracle£¬Ò»ÏÂÊǻظ´£¬ºÍ´ó¼ÒÒ»Æð̽ÌÖ¡£
Ê×ÏÈ£¬ÒªÃ÷È·ÄãµÄ·½ÏòºÍÄ¿±ê¡£
¶ÔÓÚOracleÀ´Ëµ£¬Õâ¸öÌåϵÊDZȽÏÅÓ´óµÄ£¬ËùÒÔÃ÷È·Ò»¸öÄ¿±êºÍÄãµÄ·½ÏòÊÇÔÚѧϰǰÐèҪ˼¿¼µÄÎÊÌâ¡£ ¹ÜÀí£¬ ......
Ò»¡¢×¼±¸ÌØÊâÊý¾Ý
create table t_escape(s varchar2(50));
--show define -- define "&" (hex 26)
--show escape -- escape off
set define off
set escape on
insert into t_escape values('string&text');
insert into t_escape values('string\&text');
insert into t_escape values('st ......
ORACLE
CREATE OR REPLACE FUNCTION SETSTATE(OLDVALUE VARCHAR2, POS NUMBER, SVALUE VARCHAR2)
RETURN VARCHAR2
IS
RETURN_VALUE VARCHAR2 (20);
LEN NUMBER(8);
I NUMBER(8);
TEMP_VALUE VARCHAR2(1);
BEGIN
LEN := LENGTH(OLDVALUE);
IF POS > ......
ÈÝÒ×µÃ˵£¬¾¹ýdbms_random°üµ÷ÓÃËæ»úÊýµÄ²½Öè´óÌåÓÐ4ÖÖ£º
Ò»¡¢dbms_random.normal
Õâ¸öº¯Êý²»´ø²ÎÊý£¬»á»Øµ½normal distributionµÄÒ»¸önumberÃÅÀ֮࣬ËùÒÔ´óµÖËæ»úÊý»áÔÚ-Ò»µ½Ò»Æä¼ä¡£
¼òÂÔ²âÊÔÁËÒ»ÏÂ×Ó£¬·¢×÷100000´Î×î´óÄܵ½ÎåÉÏÏ£º
SQL> declare
¶þ i number:=Áã;
Èý j number:=Áã;
ËÄ begin
Îå for ......
1.»ù±¾½á¹¹
CREATE OR REPLACE PROCEDURE ´æ´¢¹ý³ÌÃû×Ö
(
²ÎÊý1 IN NUMBER,
²ÎÊý2 IN NUMBER
) IS
±äÁ¿1 INTEGER :=0;
±äÁ¿2 DATE;
BEGIN
END ´æ´¢¹ý³ÌÃû×Ö
2.SELECT INTO STATEMENT
½«select²éѯµÄ½á¹û´æÈëµ½±äÁ¿ÖУ¬¿ÉÒÔͬʱ½«¶à¸öÁд洢¶à¸ö±äÁ¿ÖУ¬±ØÐëÓÐÒ»Ì ......