Oracle ²éѯһ¸ö±íÖеÄ×îºóÒ»ÁÐÊý¾Ý
ÒòΪ±íÖеÄÊý¾ÝÊÇ×Ô¶¯Éú³ÉµÄ£¬Ò»·ÖÖÓÉú³ÉÒ»ÁУ¬ËùÒÔÎÒÏëд¸ösql²éѯ³ö×îºóÒ»ÁеÄÊý¾Ý
Çósql
select * from table
having rownum = max(rownum)
Â¥Ö÷ÊÇÒªÇó×îºóÒ»Ðл¹ÊÇ×îºóÒ»ÁУ¿
Èç¹ûÊÇ×îºóÒ»ÐУ¬¿ÉÒԲο¼ÈçÏ´úÂ룺
SQL code:
SELECT DISTINCT
LAST_VALUE(ENAME) OVER () LAST_NAME,
LAST_VALUE(DEPTNO) OVER () LAST_DEPTNO,
LAST_VALUE(SAL) OVER () LAST_SAL
from SCOTT.EMP;
LAST_NAME LAST_DEPTNO LAST_SAL
---------- ----------- ----------
MILLER 10 1300
SELECT ENAME,DEPTNO,SAL from SCOTT.EMP;
ENAME DEPTNO SAL
---------- ---------- ----------
SMITH 20 800
ALLEN 30 1600
WARD 30 1250
JONES 20 2975
MARTIN 30 1250
BLAKE 30 2850
CLARK 10 2450
SCOTT 20 3000
KING 10 5000
TURNER 30 1500
ADAMS 20 1100
ENAME DEPTNO SAL
---------- ---------- ----------
JAMES 30 950
FORD 20 3000
MILLER 10 1300
ÒÑÑ¡Ôñ14ÐС£
×îºóÒ»ÁÐÓùý³Ì´¦Àí
²»¹ý¸Ð¾õÓÐµãÆæ¹Ö
SQL code
{{
Ïà¹ØÎÊ´ð£º
ÏÖÔÚÓÐÒ»ORACLEÖеÄSQLÓï¾ä£¬ÐèÒªÒÆÖ²µ½DB2ÖУ¬ÇëÎʸÃSQL¸ÄÈçºÎд
ORACLEÖУº
select floor(months_between(date1,date2)) from A
date1,date2·Ö±ðΪ±íÖеÄÁ½¸ö×Ö¶Î £¬¶¼ÎªÈÕÆÚÐÍ
DB2ÖÐÈçºÎʹÓÃÐ ......
±íÃû£ºgk_record_new£¨ÕâÊÇÒ»¸ö¿¼ÇÚ±í£¬ËùÓÐÔ±¹¤µÄ¿¼ÇÚÊý¾Ý¶¼´æ·ÅÔÚÕâ¸ö±íÀÖ÷¼üΪ¿¨ºÅºÍʱ¼ä£©
±í½á¹¹£º
¿¨ºÅ£ºNUMBER(10)
»ùÕ¾£ºVARCHAR2(20)
ʱ¼ä£ºDATE
³öÈë±êÖ¾£ºVARCHAR2(1)
±íÊý¾Ý
¿¨ºÅ »ùÕ¾ ʱ¼ä ³ ......
ÎÒÔÚ´´½¨Êý¾Ý¿âµÄʱºòÓõÄÃû×ÖΪoracle10£¬µ«ÊÇ´´½¨ºÃºó£¬ÔÚĬÈϵÄĿ¼ÏÂÏÔʾµÄÃû³ÆÈ´ÊÇoracle10g£¬ÕâÊÇΪʲô£¿
Äã¿´µÄ 10gÊǰ²×°Ä¿Â¼°É
SQL> select name from v$database;
NAME
---------
ORCL
......
Çë½Ì£ºoracleÊý¾Ý¿â½ø³ÌÕ¼ÓÃÒ»Ö±²»¶ÏÉÏÕÇ£¬´óÔ¼20¶àÌìºó£¬¾Í»áµ¼ÖÂϵͳÐéÄâÄÚ´æ²»×㣬Á¬½Ó¶Ïµô£¬ÇëÎÊÔõô»áÊ£¿
Ö»ÓÐÖØÆô·þÎñÆ÷²Å¿ÉÒÔÔÙÕý³£ÔËÐУ¬ÖÜÆÚÐÔ³öÏÖÐéÄâÄÚ´æ²»×ãÏÖÏó£¡
¼±£¡£¡£¡£¡ÏȸÐл´Í½Ì£¡
which os ......