1.2 Oracle資料庫學習教程-過濾和排序資料
阿新 • • 發佈:2021-10-05
Oracle資料庫學習教程
過濾和排序資料
1.where條件過濾
SQL> select * from emp where deptno=10
SQL> select * from emp where ename= 'KiNg '
//注意字串區分大小寫
SQL>select * from emp where hiredate= '17-11月-81 ';
//注意系統日期格式
1.1日期格式
獲取系統當前日期格式:SQL> select * from v$nls_parameters
(資料字典,類似於tab)
設定列寬度:SQL> col parameter for a30
修改日期格式:
SQL> alter session set NLS_DATE_FORMAT = 'yyyy-mm-dd '
再次查詢:
SQL> select * from emp where hiredate= '1981-11-17;'
顯示帶有時間的日期:
SQL> alter session set NLS_DATE_FORMAT = 'yyyy-mm-dd hh24:mi:ss'
再次檢視系統時間:
SQL> select sysdate from dual
改回系統預設格式:
SQL> alter session set NLS_DATE_FROMAT = 'DD-MON-RR '
- 字元和日期要包含在單引號中。
- 字元大小寫敏感,日期格式敏感。
- 預設的日期格式是 DD-MON-RR
1.2比較運算
- 普通比較運算子
- 等於:=
- 大/小於:>/<
- 大/小於等於:>=/<=
- 不等於:<>/!=
- between...and: 介於兩者之間
- 包含邊界
- 小值在前,大值在後
- in:在集合中(not in)
where i=10 or i=20
==>where i in(10,20)
- 如果結果有NULL值,可以使用in,不能使用not in
- like:模糊查詢
- %:匹配多個字元
- _:匹配一個字元
- 用到%和_的時候,需要轉義:% _
1.3邏輯運算
- AND 邏輯並
- OR 邏輯或
- NOT 邏輯非
2.order by排序
2.1 order by子句
- ASC 升序,預設的
- DESC 降序
select * from emp order by empno desc
如果升序,則可以不寫
- 可以作用於多列,一起排:
by 列一,列二
- 如果是降序,
by 列一 desc,列二 desc
可以只用last把null反到最後,注意是nulls
select * from emp order by comm desc nulls last
本文來自部落格園,作者:Ovins,轉載請註明原文連結:https://www.cnblogs.com/ovins/p/15369523.html
喜歡請點關注❤️ ❤️ ❤️