Oracle OCP 學習日誌-對資料進行限制和排序-02
阿新 • • 發佈:2018-11-30
-
字串和日期
字串和日期在單引號內;
字元區分大小寫,日期區分格式;
預設日期何氏為DD-MON-RR。
SELECT last_name FROM employees WHERE hire_date = '17-FEB-96' ;
-
比較運算子
SELECT last_name, salary FROM employees WHEREsalary BETWEEN 2500 AND 3500 ;
-
IN運算子
-
使用LIKE運算子執行模式匹配
-
ESCAPE識別符號
SELECTemployee_id, last_name, job_id FROM employees WHERE job_id LIKE '%SA\_%' ESCAPE '\';
ESCAPE識別符號將反斜槓(\)標識為轉義符。在SQL語句中,轉義符位於下劃線(_)之前。這樣Oracle Server將按字面意義解釋下劃線。 I
-
優先順序規則
-
排序
按select子句中第三列排序
SELECTlast_name, job_id, department_id, hire_date FROM employees ORDER BY 3;
order by 可用列別名
SELECT employee_id, last_name, salary*12 annsal FROM employees ORDER BY annsal ;
-
Using SQL Row Limiting Clause in a Query
SELECT … FROM … [ WHERE … ] [ ORDER BY … ] [OFFSET offset { ROW | ROWS }] [FETCH { FIRST | NEXT } [{ row_count | percent PERCENT }] { ROW | ROWS } { ONLY | WITH TIES }]
顯示前5行
方法一
SELECT employee_id, first_name FROM employees ORDER BY employee_id FETCH FIRST 5 ROWS ONLY;
方法二
SELECT employee_id, first_name FROM employees WHERE ROWNUM <=5 ORDER BY employee_id;
顯示第6-8行(第5行後取3行)
SELECT employee_id, first_name FROM employees ORDER BY employee_id OFFSET 5 ROWS FETCH NEXT 5 ROWS ONLY;
顯示前2行,返回額外的行
SELECT FIRST_NAME||' '||LAST_NAME,SALARY FROM EMPLOYEES ORDER BY SALARY FETCH FIRST 2 ROWS WITH ties;
-
替代變數
SELECT employee_id, last_name, salary, department_id FROM employees WHERE employee_id = &employee_num ;
對日期值和字元值使用單引號:
SELECT last_name, department_id, salary*12 FROM employees WHERE job_id = '&job_title' ;在WHERE子句中,日期值和字元值必須放在單引號中。這一規則也適用於替代變數。 指定列名、表示式和文字 不但可以在SQL語句的WHERE子句中使用替代變數,還可以對列名、表示式或文字使用替代變數。
SELECT employee_id, last_name, job_id,&column_name FROM employees WHERE &condition ORDER BY &order_column ;
如果要重複使用變數值而不每次都顯示提示,請使用雙與號(&&):
SELECT employee_id, last_name, job_id, &&column_name FROM employees ORDER BY &column_name ;
DEFINE建立變數並賦值
DEFINE employee_num=112;
UNDEFINE刪除變數
DEFINE employee_num=112;
開啟/關閉顯示替換後命令
SET VERIFY ON|OFF