Oracle Database的基本概念面試
是一個數據管理系統,它提供開放的,全面的,近乎完整的信息管理sql
一個Oracle實例數據庫
一個Oracle數據庫組成express
位於硬盤上實際存放數據的文件,這些文件組織在一塊兒,成爲一個邏輯總體,即爲Oracle數據庫。所以在Oracle看來,數據庫是指硬盤上文件的邏輯集合,必需要與內存裏實例合做,才能對外提供數據管理服務服務器
Oracle實例數據結構
位於物理內存裏的數據結構,它由一個共享的內存池和多個後臺進程所組成,共享的內存池能夠被全部進程訪問,用戶若是要存取數據庫(也就是硬盤上的文件)裏的數據,必須經過實例才能訪問,不能直接讀取硬盤上的文件。學習
實例能夠操做數據庫,在任什麼時候刻一個實例只能與一個數據庫關聯,大多數狀況下,一個數據庫只有一個實例對其進行操做。spa
表空間由多個數據文件組成,邏輯概念.net
數據文件只能屬於一個表空間,物理概念排序
段存在於表空間中
段是區的集合
區是數據塊的集合
數據塊會被映射到磁盤塊
1. 書寫select語句
2. 返回表中的所有數據
3. 返回表中指定列的數據
4. 使用別名
5. 使用sql*plus環境,書寫,保存和執行sql語句和sql*plus命令
語句格式:(讀完本節後就能看懂啦,親)
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table;
SQL語句大小寫不敏感
SQL能夠寫在一行或多行
關鍵字不能被縮寫也不能被分行
各子句通常要分行寫
使用縮進提供語句的可讀性
select 標識選擇那些列
選擇所有列*
選擇特定列,指定列名
選擇表達式
+ - * /
from 標識從那個表中選擇
下圖爲基於那張表
J 重命名一個列
J 便於計算
J 緊跟列名,也能夠在列名和別名之間加入關鍵字as,別名使用雙引號,以便在別名中包含空格和特殊字符並區分大小寫(面試有的時候會問到,使用雙引號和不使用的)
J as能夠省略
使用別名
J 把列於列,列與字符鏈接在一塊兒
J 用「||」表示
J 能夠用來合成列
記得終止只組合成了一列
J 字符串能夠是select列表中的一個字符,數字,日期
J 日期和字符只能在單引號中出現
J 每當返回一行,字符串被輸出一次
默認狀況下,查詢返回所有行,包括重複行
刪除重複行,在select子句中使用關鍵字「distinct」刪除重複行
desc簡寫
describe 表名
SQL語句對比SQL*Plus |
|
一種語言 |
一種環境 |
ANSI標準 |
Oracle的特性之一 |
關鍵字不能縮寫 |
關鍵字能夠縮寫 |
使用語句控制數據庫中的表的定義信息和表中的數據 |
命令不能改變數據庫中的數據值 集中運行 |
功能 |
描述表結構 |
編輯SQL語句 |
執行SQL語句 |
將SQl保存在文件中並將SQL語句執行結果保存在文件中 |
在保存的文件中執行語句 |
將文本文件裝入SQL*Plus編輯窗口 |
本機上Http://localhost:5560/isqlplus/ |
經過學習完本節,要掌握以下功能
使用比較運算符
操做符 |
含義 |
= |
等於(不是==,賦值使用:=符號) |
> |
大於 |
>= |
大於,等於 |
< |
小於 |
<= |
小於,等於 |
<> |
不等於(也能夠是!=) |
使用between and,in,like和null運算
操做符 |
含義 |
between…and… |
兩個值之間(包含邊界) |
in(set) |
等於值列表中的一個 |
like |
模糊查詢 |
is null |
空值 |
使用邏輯運算符and,or和not
操做符 |
含義 |
and |
邏輯並 |
or |
邏輯或 |
not |
邏輯否 |
優先級 |
|
1 |
算術運算符 |
2 |
鏈接符 |
3 |
比較符 |
4 |
is null,like,not in,in |
5 |
between |
6 |
not |
7 |
and |
8 |
or |
asc(ascend) |
升序 |
desc(descend) |
降序 |
order by子句在select語句的末尾
排序的規則 |
|
1 |
能夠按照select語句中的列名排序 |
2 |
能夠按照別名列名排序 |
3 |
能夠按照select語句中的列名的順序值排序 |
4 |
若是按照多列進行排序,則規則是先按照第一列排序,若是相同,按照第二列排序依次類推 |
5 |
desc |
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table
[WHERE condition(s)]
[ORDER BY {column, expr, alias} [ASC|DESC]];
其中
PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
NLS_DATE_FORMAT
DD-MON-RR
NLS_DATE_LANGUAGE
SIMPLIFIED CHINESE
NLS_CHARACTERSET
ZHS16GBK
格式化:
查詢結果有誤
正確的查詢方式:
SQL> --轉意字符
SQL> rollback;
回退已完成。
and or 左邊和右邊,從右到左順序執行