1、登錄
運行cmd進入命令行
sqlplus 用戶名/密碼 [as sysdba]
如果是超級管理員需要在用戶名/密碼后面加上 as sysdba,是以系統(tǒng)管理員的身份來登錄的杂靶,如果是普通用戶不需要as sysdba。
2挂捅、查看當前連接數(shù)據(jù)庫的用戶
show user
3涂佃、在整個Oracle里面提供四個用戶愿卒,切換用戶命令格式:
conn 用戶名/密碼 [as sysdba]
為了防止命令行中數(shù)據(jù)展示表格錯亂的情況可以設計行寬和列寬。
- 設置每行顯示數(shù)據(jù)的長度:
Set linesize 300; 每行展示300個字符
- 設置每頁顯示的數(shù)據(jù)行數(shù):
SET PAGESIZE 30;
- 上面兩條指令是格式化指令。
注: 也可以使用以下命令來單獨設置列表寬度:
COL 列名 FOR A+長度;
Col ename for a8
Col mgr for 9999
Col sal for 9999
4樟结、查看用戶下的表
select * from [用戶名].[表名]
5养交、查看表的結(jié)構(gòu)
Desc 表名
Number(4) 最大長度為4為的數(shù)值類型
Varchar2(10) 最大長度為10的字符串,varchar2用于存儲可變長度的字符串瓢宦,.varchar2把所有字符都占兩字節(jié)處理(一般情況下)碎连,varchar只對漢字和全角等字符占兩字節(jié),數(shù)字驮履,英文字符等都是一個字節(jié)鱼辙,VARCHAR2把空串等同于null處理,而varchar仍按照空串處理玫镐;建議在oracle中使用varchar2
Number(7,2) 數(shù)值類型整數(shù)位占5位倒戏,小數(shù)位占2位,一共7位恐似。
Date 時間類型
6杜跷、Oracle 如何查看當前的實例及切換實例
一、查看當前的實例
- 輸入命令
show parameter name
便可以查看當前登錄數(shù)據(jù)庫的參數(shù)配置蹂喻,如下可以看到當前的默認數(shù)據(jù)庫實例為implocal - 還有一種更簡單的方法查看當前實例葱椭,即
select name from v$database;
二、切換數(shù)據(jù)庫實例
執(zhí)行命令:sqlplus /@ORACLE_SID as sysdba;
其中ORACLE_SID為具體的實例名稱口四,
比如連接到orcl實例就執(zhí)行命令:sqlplus /@orcl as sysdba;
7、Oracle基本操作命令:http://www.reibang.com/p/976135b9c048
8秦陋、row_number() over()函數(shù)的基本用法
語法:row_number() over(partition by column order by column)
- 簡單的說row_number()從1開始蔓彩,為每一條分組記錄返回一個數(shù)字,這里的
row_number() over(order by xxx desc)
是先把xxx列降序驳概,再為降序以后的每條xxx記錄返回一個序號赤嚼。 -
row_number()over(partition by xxx order by yyy desc)
表示根據(jù)xxx分組,在分組內(nèi)部根據(jù)yyy排序顺又,而此函數(shù)計算的值就表示每組內(nèi)部排序后的順序編號(組內(nèi)連續(xù)的唯一的)更卒。
注意:
- 在求第一名成績的時候,不能用row_number()稚照,因為如果同班有兩個并列第一蹂空,row_number()只返回一個結(jié)果。
- rank()和dense_rank()的區(qū)別是:
rank()是跳躍排序果录,有兩個第二名時接下來就是第四名上枕。
dense_rank()l是連續(xù)排序,有兩個第二名時仍然跟著第三名弱恒。
==================================
oracle的分析函數(shù)over(Partition by...) 及開窗函數(shù)
ROW_NUMBER() OVER函數(shù)的基本用法
ROW_NUMBER() OVER()函數(shù)用法詳解 (分組排序 例子多)
Oracle分析函數(shù)Over()
==================================