文章目录
- 1. 查看Oracle进程 ps -ef 查看oracle相关的进程
- 2. 连接到数据库 sqlplus
- 3. 数据库启动和关闭**startup shutdown immediate
- 4. 执行相关命令添加scott用户
- 5. 线长和页长 set lines set pages
- 6. sql语言逻辑
- 7. 空值null
- 8. 字符串
- 9. sql中执行linux命令
- 10. 转义符,& % _
- 11. 运算优先级
- 12. 虚拟表,虚拟列
- 13. 赋权grant
- 14. 查询语句select
- 15. 列别名is
- 16. 连接符||
- 17. 去重distinct
- 18. 显示表结构describe
- 19. 过滤数据where
- 20. upper函数 转换为大写
- **21. lower函数 转换列上所有数据为小写,然后再匹配**
- **22. 比较运算符**
- **23. 逻辑运算符 and or not**
- **24. 修改时间格式**
1. 查看Oracle进程 ps -ef 查看oracle相关的进程
ps -ef | grep ora_
2. 连接到数据库 sqlplus
连接到数据库,sysdba是默认的超级账户,和linux下的root类似。 scott是创建的用户,密码是tiger。
>sqlplus / as sysdba
>sqlplus scott/tiger
连接到数据库,sysdba是默认的超级账户,和linux下的root类似。 scott是创建的用户,密码是tiger。
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
命令出来后看到提示的数据库详细信息,说明连接进来了。
切换用户
在数据库中
SQL> conn scott/tiger
3. 数据库启动和关闭**startup shutdown immediate
sql>startup 启动
sql>startup
ORACLE instance started.
Total System Global Area 830930944 bytes
Fixed Size 2257800 bytes
Variable Size 536874104 bytes
Database Buffers 289406976 bytes
Redo Buffers 2392064 bytes
Database mounted.
Database opened
提示输出和信息,成功。
关闭数据库
sql>shutdown immediate
4. 执行相关命令添加scott用户
#SQL> @?/rdbms/admin/utlsampl.sql
[oracle@hwak ~]$ sqlplus scott/tiger 这时就可以登陆了
5. 线长和页长 set lines set pages
指定线的长度为200
set lines 200
指定一页显示200
set pages 200 指定一页显示200
6. sql语言逻辑
SQL语言大小写不敏感
SQL可以写在一行或多行
关键字不能被缩写也不能分行
各子句一般要分行写
使用缩进提高语句的可读性
SQL语句在SQL Developer中,可以以;终止,当执行多个SQL时,结束分号是必需的。
在SQL *Plus中,必须用;结束每条SQL语句
7. 空值null
表达命令,nvl函数将null暂时设定为0,以便计算无效的、未指定的、未知的或不可预知的值
NULL不是0,也不是空格
8. 字符串
字符串可以是SELECT列表中的一个字符,数字,日期。日期和字符只能在单引号中出现。每当返回一行时,字符串被输出一次例如sysdate函数,表示系统时间
9. sql中执行linux命令
在数据库里如果想执行Linux的命令,输入 !后再输入命令(!相当于暂时退出,去执行系统的命令)
>sql>!ps -ef | grep ora_ 查看Oracle进程
10. 转义符,& % _
11. 运算优先级
输入的变命令运算时有固定的优先级,输出命令不注意优先级,则有可能结果不一样
12. 虚拟表,虚拟列
13. 赋权grant
grant 赋予账号权限
例如:给scott账户创建view权限
sys超级账号赋予
SQL> grant create view to scott;
Grant succeeded.
14. 查询语句select
sql>select
功能:可以按col列(column)查看,也可以按row行查看;可以把意思相同的列或行关联,根据关联关系多表查询。语法:(不区分大小写)
SELECT *|{[DISTINCT] column | expression [alias],...}
FROM table;
查看dept所有列
sql> select * from dept
查看自定义列dname列,还有deptno列,将deptno列的数值+100然后输出成新列,命名noplus
sql>select dname,deptno+100 as "noplus",deptno from dept;
中间插入列输出is
sql>select dname,'is',deptno
from dept;
中间插入列并且列名为is
SQL> select dname, 'is'as"is",deptno
from dept;
15. 列别名is
is重命名一个列标题,便于计算,紧跟列名(也可以在列名和别名之间加入关键字‘AS’),如果它包含空格或特殊字符,或者它是区分大小写的,那么需要双引号
>将dname重命名为xxx
sql>select dname as xxx 将dname
16. 连接符||
|| 把列与列,列与字符连接在一起,用“||”,可以用来合成列
>将aaa和bbb两列合并显示
sql>select aaa || bbb
17. 去重distinct
去除xx的重复显示
sql>select dietinct xx
18. 显示表结构describe
使用DESCRIBE命令显示表结构,或者选择表中的Connections树,并使用列选项卡,查看表结构
>sql>desc xxx
type显示类别 表示数据类别
19. 过滤数据where
作用:限制行;过滤行数据
语法:只显示满足条件的行,把不满足的行都过滤掉。WHERE子句要紧跟FROM子句。
在这里插入代码片`>排除掉xxx不等于20的
where xxx=20
20. upper函数 转换为大写
将xxx转换为大写
where xxx=upper(“xxx”)
21. lower函数 转换列上所有数据为小写,然后再匹配
22. 比较运算符
<>(不等于)或用 != 或 ^= 表示BETWEEN…AND… 区间
where xxxx between 200 and 300; 匹配xxx里200-300的取键
IN(set) 多个值
where xxxx in (“1”,“2”,“3”); 匹配xxx里的1.2.3
LIKE 匹配字符(要加通配符)
where xxxx like '5222%”; 匹配xx里面5222开头后面无限长度的字符 liks 就是运算类似的值
IS NUL
where xxxx IS NULL 判断xxx里面是不是空值
反之 IS NOT NUL一样
23. 逻辑运算符 and or not
AND表示和,都,两个条件的关系
输出同时满足aaa里面大于等于500,且bbb大于600的值
where aaa=>500
and bbb>600
OR表示或者,其中一个。一个值达到限制就输出
IN相当于OR,但IN的执行效率更高
输出aaa大于500或者bbb大于600的值
where aaa=>500
or bbb>600
NOT 表示否则,如果达不到就返回
NOT IN
NOT BETWEEN … AND …
NOT LIKEI
NOT NUll
24. 修改时间格式
修改当前会话时间,重启失效
sql>alter session
修改会话时间,重启不失效
sql>alter system