oracle PL SQLѧϰ°¸Àý£¨Ò»£©
¡¾Ê¾Àý1.1¡¿ ²éѯ¹ÍÔ±±àºÅΪ7788µÄ¹ÍÔ±ÐÕÃûºÍ¹¤×Ê¡£
²½Öè1£ºÓÃSCOTT/TIGERÕË»§µÇ¼SQL*Plus¡£
²½Öè2£ºÔÚÊäÈëÇøÊäÈëÒÔϳÌÐò£º
/*ÕâÊÇÒ»¸ö¼òµ¥µÄʾÀý³ÌÐò*/
SET SERVEROUTPUT ON
DECLARE--¶¨Ò岿·Ö±êʶ
v_name VARCHAR2(10); --¶¨Òå×Ö·û´®±äÁ¿v_name
v_sal NUMBER(5); --¶¨ÒåÊýÖµ±äÁ¿v_sal
BEGIN --¿ÉÖ´Ðв¿·Ö±êʶ
SELECT ename,sal
INTO v_name,v_sal
from emp
WHERE empno=7788;
--ÔÚ³ÌÐòÖвåÈëµÄSQLÓï¾ä
DBMS_OUTPUT.PUT_LINE('7788ºÅ¹ÍÔ±ÊÇ£º'||v_name||'£¬¹¤×ÊΪ£º'||to_char(v_sal));
--Êä³ö¹ÍÔ±ÃûºÍ¹¤×Ê
END; --½áÊø±êʶ
²½Öè3£º°´Ö´Ðа´Å¥»òF5¿ì½Ý¼üÖ´ÐгÌÐò¡£
Êä³öµÄ½á¹ûÊÇ£º
7788ºÅ¹ÍÔ±ÊÇ£ºSCOTT£¬¹¤×ÊΪ£º3000
PL/SQL ¹ý³ÌÒѳɹ¦Íê³É¡£
======================================================================================================================
¡¾Ê¾Àý2.1¡¿ ±äÁ¿µÄ¶¨ÒåºÍ³õʼ»¯¡£
ÊäÈëºÍÔËÐÐÒÔϳÌÐò£º
SET SERVEROUTPUT ON
DECLARE --ÉùÃ÷²¿·Ö±êʶ
v_job VARCHAR2(9);
v_count BINARY_INTEGER DEFAULT 0;
v_total_sal NUMBER(9,2) := 0;
v_date DATE := SYSDATE + 7;
c_tax_rate CONSTANT NUMBER(3,2) := 8.25;
v_valid BOOLEAN NOT NULL := TRUE;
BEGIN
v_job:='MANAGER';
--ÔÚ³ÌÐòÖи³Öµ
DBMS_OUTPUT.PUT_LINE(v_job);
--Êä³ö±äÁ¿v_jobµÄÖµ
DBMS_OUTPUT.PUT_LINE(v_count);
--Êä³ö±äÁ¿v_countµÄÖµ
DBMS_OUTPUT.PUT_LINE(v_date);
--Êä³ö±äÁ¿v
Ïà¹ØÎĵµ£º
select * from tt t inner loop join ss s with(nolock) on s.c=t.c
ʹÓà nested join
select * from tt t inner merge join ss s with(nolock) on s.c=t.c
ʹÓà merge join
select * from tt t inner hash join ss s with(nolock) on s.c=t.c
ʹÓà hash jion
&n ......
ÌìÓв»²â·çÔÆ£¬
IBM µÄÖж˴ÅÅÌÕóÁÐÕâ´ÎÓÖÈÇ»öÁË¡£ÔÚ΢ÂëÉý¼¶µÄʱºò£¬
DS4800 ·¢Éú¹ÊÕÏ¡£µ¼Öµ±Ê±ÔÚÕą̂¿âÉϵļ¸Ì×Éú²ú¿â±¨´íÁË¡£
IBM¹¤³Ìʦ°ÑÕóÁйÊÕϻָ´ºó£¬ÅÄÅÄÆ¨¹É×ßÈË£¬ÕóÁÐÉϵÄÊý¾ÝÓÖµÃÎÒÃÇÀ´Ïë°ì·¨ÇÀ¾ÈÁË¡£¡£¡£¡£
»¹ºÃÓÐoracle supportµÄÖ§³ÖÎÒÃÇ×îÖÕ»¯½âÁËÕâ´ÎΣ»ú¡£ÏÂÎÄÏêϸ½éÉÜÁËÕû¸ö»Ö¸´µÄ¹ý³Ì¡£
oracle¹¤ ......
Êý¾Ý¿âÊý¾Ý
ID
UserName
Date
1
User1
2010/4/27
1
User1
2010/4/11
1
User1
2010/4/1
ÒªÇó£º
»ñÈ¡×îÐÂÈÕÆÚµÄÒ»ÌõÊý¾Ý
SqlÓï¾ä£º
select t.* from tb t where date = (select max(date) from tb where id = t.id) order by t.id ......
SELECT
DECODE(ÁÐ,0,'Q'1,'P',2,'O')¡¡AS ret
from dual
--·ÖÎö: µ± ÁÐ=0ʱ,½«"Q"¸³Öµ
--µ± ÁÐ =1ʱ,½«"P"¸³Öµ
--µ± ÁÐ=2ʱ,½«"O"¸³Öµ
--NVL()º¯Êý:
--NVL(ARG,VALUE)´ï±êÈç¹ûÇ°ÃæµÄARGֵΪNULLÄÇô·µ»ØµÄֵΪºóÃæµÄVALUE¶þÕß½áºÏʹÓÃ:
DECODE(NVL(±äÁ¿ ''),'','-','OK')
//·ÖÎö:
--Èô ±äÁ¿ ÊÇ·ñΪ¿Õ.ÈôΪ¿Õ¸³¸ø¿ ......