建立用戶:create user 用戶名 identified by 用戶名;數據庫
分配權限或角色:grant connect,resource to 用戶名;ide
取消權限或角色:revoke 權限/角色 from 用戶名;函數
connect:臨時用戶優化
resource:更爲可靠的正式用戶對象
dba:數據庫管理員角色,擁有管理數據庫的最高權限排序
注意:角色是具備名稱的一組權限的組合。索引
【注意】數據操做語句針對表中的數據,而數據定義語句針對數據庫對象(表、索引、視圖、觸發器、存儲過程、函數、表空間等)事務
1)重命名查詢結果中的字段,以加強可讀性;字符串
2)別名若是含有空格或其餘特殊字符或大小寫敏感,需用雙引號引發來;it
3)as 能夠省略。
在搜索字段名前,加一個 distinct 關鍵字
例如:select distinct deptno from emp;
排序包括升序(asc,默認升序,該關鍵字可不寫)和 降序(desc)
例如:select empno,ename,sal from emp order by sal; --------以sal升序進行排序
select empno,ename,sal from emp order by sal desc; --------以sal降序進行排序
舉例:
select * from emp where deptno = 10;
select * from emp where ename = ‘SMITH’;
select * from emp where hiredate = ‘02-4月-81’;
注意:
1)字符串和日期值要用單引號括起來
2)字符串大小寫敏感
3)日期值格式敏感!!!
其餘關鍵字:
- between… and… ------界於兩值之間(包括邊界)
- in(value,value…) ------出如今集合中
- like ------模糊查詢(%表示零個或多個字符 _表示一個字符,特殊字符可以使用escape標識符查找)
- is null -------爲空值
- not is null -------不爲空
例如:select * from emp where deptno = 10 and sal > 1000;
and:把檢索結果較少的條件放到後面
or :把檢索結果較多的放到後面
重要:算術 > 鏈接 > 比較 > 邏輯
優先級:
- * /
- + -
- ||
- >, <, >=, <=, <>不等於
- is [not] null ,like [not], in(set)
- [not] between… and…
- not
- and
- or
【注】:
- 不等於也可使用 != 和 ^=來顯示
- between… and… 是從上限到下限,並且都是閉區間,包含了上限和下限
- in(set) 猶如多個 or 表達式組合而成
- % 表示零個或多個字符,_表示一個佔位符。 ---------舉例:select last_name from employees where last_name like ’%05’;
- escape 關鍵字 :能夠用該關鍵字標識符搜索實際的%和_符號。使用escape選項,該選項指定換碼符是什麼。 ------舉例:select last_name,job_id from employees where job_id like ‘SA\_%’ escape ‘\’;
函數分爲:
單行函數:字符函數、數值函數、日期函數、轉換函數、通用函數
多行函數:sum(),avg() ----僅適用數值型。 count(),max(),min() -----適用任何類型數據
字符函數:
大小寫處理函數:
- lower(char) -----轉換爲小寫
- upper(char) -----轉換爲大寫
- initcap(char) -----首字母大寫
字符處理函數:
- concat(char1,char2) -----鏈接字符串
- substr(char,pos,len) -----取子字符串,取char字符串下標位置爲pos起,len個字符
- length(str) -----求字符串長度
- instr(char,substr[,pos]) -----查找字符串位置,例如: instr(‘worldwide’,’d’)
- lpad(char1,len,char2) | rpad(char1,len,char2) --------左填充和右填充。char1 左邊|右邊 填充【len-length(char1)】個 char2 字符。
- trim(trim_character from trim_source) ----- 從一個字符串中去除頭(leading)或尾(trailing)或頭尾兩側(both)的字符(默認頭尾兩側)
- ltrim(char,set) -----左剪裁
- rtrim(char,set) -----右剪裁
- replace(char,search_str,replace_str) -----字符串替換
【注意】:
- trim 舉例:去除頭,select trim(leading ‘H’ from ‘HelloWorldH’) from dual; 其餘相似
- dual 表是一個虛擬的表,實際上,它並不存在。
數值函數:
一、round(arg1,arg2) | round(arg):
- 四捨五入指定小數的值,arg1--數據類型,原數字;arg2---整數類型,小數點保留的位數,能夠是一個負數,負數表示指定整數的位置。
- arg--數據類型,原數字;四捨五入保留整數。
二、trunc(arg1,arg2):截斷指定小數的值,不作四捨五入處理。
- arg1:數字類型。原數字。 arg2:整數類型。小數點保留的位數,可使一個負數。負數則表示指定整數的位置。
trunc(arg1):四捨五入保留整數。 arg1:數字類型。原數字。 arg2:整數類型。小數點保留的位數。
三、mod(arg1,arg2):取餘,也就是取模。 arg1:數字類型。被除數。 arg2:數字類型。除數。
日期函數:
轉換函數:
其餘函數: