【Oracle 基礎】基本查詢

一、基本語法

語法:

select * |{[distinct] 列名 |表達式 [別名],...} from 表名 [where 查詢條件][order by [asc|desc]]

二、語法解析

(一) *代表查詢所有列

(二) distinct 去重

(三) 別名、連接符||、字符串

  • 列的別名能夠改變列的顯示標題,可以直接跟在列名後面,也可以中間加as,如果別名中包含空格及特殊字符或者去要區分大小寫,則需要給別名加上雙引號。
  • 連接符或者concat函數可以將多個列連接起來,合成新列。
select 列名1||'的數量是:'||列名2 as 別名 from 表名;
  • 字符串可以使裏表中的字符、數字、日期,日期和字符中能在單引號中出新

(四)日期顯示格式的修改

alter session set nls_language='SIMPLIFIED CHINESE';
alter session set nls_language='AMERICAN';
alter session set nls_language='YYYY/MM/DD';

(五) where子句

where子句中使用數值,可以直接引用,也可以加引號
where子句中使用字符值,必須加引號,且區分大小寫
where子句中國使用日期值,必須加引號,且需要符合日期語言和顯示格式

(六) 排序 order by

asc升序(默認),desc降序,當select包含多個子句時,order by必須是最後一條語句。
如果參與排序的數據中有NULL,那NULL默認是大的值
可以有多列參與排序,用逗號隔開,月靠近關鍵字的優先級越高。
別名也可以參加排序。

三、運算符和關鍵字

(一) 算數運算符

運算符 說明
+
-
*
/

算數運算符可以應用在數字和日期的列上
乘除比加減具有更高的運算優先級,加括號可以改變優先級
NULL參與的算數運算結果還是NULL

(二) 比較運算符

運算符 說明
= 等於
> 大於
>= 大於等於
< 小於
<= 小於等於
<> 不等於

(三) 邏輯運算符

運算符 說明
and 邏輯與(並)
or 邏輯或
not 邏輯與

優先級:not>and>or

(四) 範圍關鍵字

1.between…and…
用於指定特定範圍的條件,包含邊界值
between 較小值 and 較大值
2.in
in執行列表匹配的操作,列或表達式結果匹配列表中的任意一個值
in(值1,[值2,...值n])

(五) 判斷空值

判斷是否空值 is null | is not null,並不是用比較運算符。

(六) 模糊查詢like

通配符_表示單個字符,%表示0個或多個字符。
如果要查找的字符中包含特殊字符,則需要用反斜槓\轉義,並在後面加上escape 特殊符號

select * from 表名 where 列名 like '\_%' escape '\';
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章