1、登录
运行cmd进入命令行
sqlplus 用户名/密码 [as sysdba]
如果是超级管理员需要在用户名/密码后面加上 as sysdba,是以系统管理员的身份来登录的,如果是普通用户不需要as sysdba。
2、查看当前连接数据库的用户
show user
3、在整个Oracle里面提供四个用户,切换用户命令格式:
conn 用户名/密码 [as sysdba]
为了防止命令行中数据展示表格错乱的情况可以设计行宽和列宽。
- 设置每行显示数据的长度:
Set linesize 300; 每行展示300个字符
- 设置每页显示的数据行数:
SET PAGESIZE 30;
- 上面两条指令是格式化指令。
注: 也可以使用以下命令来单独设置列表宽度:
COL 列名 FOR A+长度;
Col ename for a8
Col mgr for 9999
Col sal for 9999
4、查看用户下的表
select * from [用户名].[表名]
5、查看表的结构
Desc 表名
Number(4) 最大长度为4为的数值类型
Varchar2(10) 最大长度为10的字符串,varchar2用于存储可变长度的字符串,.varchar2把所有字符都占两字节处理(一般情况下),varchar只对汉字和全角等字符占两字节,数字,英文字符等都是一个字节,VARCHAR2把空串等同于null处理,而varchar仍按照空串处理;建议在oracle中使用varchar2
Number(7,2) 数值类型整数位占5位,小数位占2位,一共7位。
Date 时间类型
6、Oracle 如何查看当前的实例及切换实例
一、查看当前的实例
- 输入命令
show parameter name
便可以查看当前登录数据库的参数配置,如下可以看到当前的默认数据库实例为implocal - 还有一种更简单的方法查看当前实例,即
select name from v$database;
二、切换数据库实例
执行命令:sqlplus /@ORACLE_SID as sysdba;
其中ORACLE_SID为具体的实例名称,
比如连接到orcl实例就执行命令:sqlplus /@orcl as sysdba;
7、Oracle基本操作命令:https://www.jianshu.com/p/976135b9c048
8、row_number() over()函数的基本用法
语法:row_number() over(partition by column order by column)
- 简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的
row_number() over(order by xxx desc)
是先把xxx列降序,再为降序以后的每条xxx记录返回一个序号。 -
row_number()over(partition by xxx order by yyy desc)
表示根据xxx分组,在分组内部根据yyy排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)。
注意:
- 在求第一名成绩的时候,不能用row_number(),因为如果同班有两个并列第一,row_number()只返回一个结果。
- rank()和dense_rank()的区别是:
rank()是跳跃排序,有两个第二名时接下来就是第四名。
dense_rank()l是连续排序,有两个第二名时仍然跟着第三名。
==================================
oracle的分析函数over(Partition by...) 及开窗函数
ROW_NUMBER() OVER函数的基本用法
ROW_NUMBER() OVER()函数用法详解 (分组排序 例子多)
Oracle分析函数Over()
==================================