Oracle ¶à±íÁ¬½Ó×Ó²éѯ
1.Çó²¿ÃÅÖÐÄÄЩÈËнˮ×î¸ß£º
select ename,sal
from emp join
(
select max(sal) max_sal, deptno
from emp
group by deptno
) t
on (emp.sal = t.max_sal and emp.deptno = t.deptno);
2.Çó²¿ÃÅÆ½¾ùнˮµÄµÈ¼¶£º
select deptno, avg_sal, grade
from
(
select deptno, avg(sal) avg_sal
from emp
group by deptno
) t join salgrade s
on (t.avg_sal between s.losal and s.hisal);
3.Çó²¿ÃÅÆ½¾ùµÄнˮµÈ¼¶£º
select deptno, avg(grade)
from (
select deptno, ename, grade
from emp join salgrade s
on emp.sal between s.losal and s.hisal
) t
group by deptno;
4.ÇóÄÄЩÈËÊǾÀíÈË£º
select ename from emp where empno in (select distinct mgr from emp);
5.²»×¼Óþۼ¯º¯Êý£¬ÇóнˮµÄ×î¸ßÖµ£º
select distinct sal
from emp
where sal not in
(
select distinct e1.sal
from emp e1 join emp e2 on (e1.sal < e2.sal)
);
6.Ç󯽾ùнˮ×î¸ß²¿ÃŵIJ¿ÃűàºÅ£º
select deptno, avg_sal
from (
select deptno, avg(sal) avg_sal
from emp
group by deptno
) where avg_sal = (
select max(avg_sal)
from (
select deptno, avg(sal) avg_sal
from emp
group by deptno
)
);
7.Ç󯽾ùнˮ×î¸ß²¿ÃŵIJ¿ÃÅÃû³Æ£º
select deptno,dname
from dept
where deptno = (
select deptno
from (
select deptno, avg(sal) avg_sal
from emp
group by deptno
) where avg_sal = (
select max(avg_sal)
 
Ïà¹ØÎĵµ£º
1.Êý¾Ý¿â¶ÀÁ¢ÐÔ
½«Ó¦ÓôÓÊý¾Ý¿âA ÒÆÖ²µ½Êý¾Ý¿âB ʱ£¬ÎÒʱ³£Óöµ½ÕâÖÖÎÊÌ⣺ӦÓÃÔÚÊý¾Ý¿âA ÉÏÔ±¾ÎÞи¿É»÷£¬µ½ÁË
Êý¾Ý¿âB ÉÏÈ´²»Äܹ¤×÷£¬»òÕß±íÏֵúÜÀëÆæ¡£¿´µ½ÕâÖÖÇé¿ö£¬ÎÒÃǵĵÚÒ»¸öÏë·¨ÍùÍùÊÇ£¬Êý¾Ý¿âB ÊÇÒ»¸ö
“²»ºÃµÄ”Êý¾Ý¿â¡£¶øÕæÕýµÄÔÒòÆäʵÊÇÊý¾Ý¿âB µÄ¹¤×÷·½Ê½ÍêÈ«²»Í¬¡£Ã»ÓÐÄĸöÊý¾Ý¿âÊÇ´íµÄ ......
1.¾¡¿ÉÄܵØÊ¹Óð󶨱äÁ¿ ²»Óÿª¹ØCURSOR_SHARING=FORCE
Èç¹ûÄãÔ¸Ò⣬Õâ¸öÌØÐÔ»áʵÏÖÒ»¸ö×Ô¶¯°ó¶¨Æ÷£¨auto-binder£©¡£
Èç¹ûÓÐÒ»¸ö²éѯ±àдΪSELECT * from EMP WHERE EMPNO = 1234£¬×Ô¶¯°ó¶¨Æ÷»áÇÄÎÞÉùÏ¢µØ°ÑËü¸Äд³É
SELECT * from EMP WHERE EMPNO = :x¡£ÕâȷʵÄܶ¯Ì¬µØ´ó´ó¼õÉÙÓ²½âÎöÊý£¬²¢¼õÉÙÇ°ÃæÌÖÂÛµ ......
Oracle 3 ¸öÖ÷ÒªµÄÄÚ´æ½á¹¹£º
ϵͳȫ¾ÖÇø£¨System Global Area£¬SGA£©£ºÕâÊÇÒ»¸öºÜ´óµÄ¹²ÏíÄÚ´æ¶Î£¬¼¸ºõËùÓÐOracle
½ø³Ì¶¼Òª·ÃÎÊÕâ¸öÇøÖеÄijһµã¡£
½ø³ÌÈ«¾ÖÇø£¨Process Global Area£¬PGA£©£ºÕâÊÇÒ»¸ö½ø³Ì»òÏß³ÌרÓõÄÄڴ棬ÆäËû½ø³Ì/
Ï̲߳»ÄÜ·ÃÎÊ¡£
Óû§È«¾ÖÇø£¨User Global Area£¬UGA£©£ºÕâ¸öÄÚ´æÇøÓë ......
sqlplusµÄÅäÖÃÎļþΪlogin.sql£¬Í¨³£ÈçÏÂËùʾ´´½¨¸ÃÎļþ£º
set serveroutput on size 1000000
set trimspool on --Â˳ýspoolÊä³öµÄ¿Õ°×
set linesize 200 --ÓÃÓÚÉ趨ÿÐÐÏÔʾµÄ¿í¶È
set pagesize 9999 --ÉèÖÃÏÔʾµÄÒ³Êý
set sqlprompt '_user @ _connect_identifier> '
½«¸ÃÎļþ¸´ÖƵ½Oracle°²×°Ä¿Â¼C ......
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 > ......