Oracle数据库——简单查询及一些常用操作

目录

两条格式化指令

启动记事本程序,编写代码

切换用户

查看其他用户的表

执行操作系统命令

查看一个用户下的所有表:

查看一个表的结构

指定列所占长度

 SQL简单查询:

去除重复数据:

使用别名

将查询结果合并显示

常量的三点说明

限定查询 (WHERE)

顺序查询


两条格式化指令

——设置每行显示的数据长度

SET LINESIZE 300;

——设置每页数据行数

SET PAGESIZE 30;

 

 

启动记事本程序,编写代码

ED test;

无后缀,默认为.sql

Oracle数据库——简单查询及一些常用操作_第1张图片

若不关闭记事本,则cmd处于阻塞状态

 

执行test.sql记事本中的命令

 @test

 

切换用户

CONN sh/sh
已连接。

切换到管理员

CONN sys/change_on_install AS SYSDBA
已连接。

查看其他用户的表

用户名.表名称

 SELECT * from scott.emp;

查询一个用户全部数据表

select * from user_tables;

执行操作系统命令

在sqlplus中可直接执行操作系统的命令,在前加HOST

例如:

host copy e:\a.png e:\b.png

查看一个用户下的所有表:

 SELECT * FROM tab;

查看一个表的结构

 DESC emp;

指定列所占长度

COL job FOR A10;

 

 SQL简单查询:

查取一张数据表中所有数据行的内容

去除重复数据:

在SELECT后面加上INSTINT

 SELECT DISTINCT job,empno FROM emp;

若查询数据为多个列,只有在多个列数据都相同的情况下都相同才消除

使用别名

不建议使用中文

 select ename bieming from emp;

将查询结果合并显示

 SELECT empno||ename from emp;

常量的三点说明

  1. 字符串:使用单引号声明,例如'hello'
     SELECT '雇员编号:' || empno|| ',雇员名字'||ename from emp;
  2. 数字:直接编写,例如 12
  3. 日期:按照日期风格格式编写,使用xx日-xx月-xx年

限定查询 (WHERE)

  • 关系运算符:>,<,>=,<=,<>(!=);
  • 逻辑运算符:AND,OR,NOT;
    SELECT * FROM emp WHERE sal>2000 AND sal<7000;
  • 范围运算符:BETWEEN...AND;
     SELECT * FROM emp WHERE sal BETWEEN 333 AND 900;
  • 谓语范围:IN,NOTIN;
     SELECT * FROM emp WHERE NOT sal IN(111,222,333,null);
  • 空判断:IS NULL,ISNOTNULL;
    SELECT * FROM emp WHERE sal IS NOT NULL;
  • 模糊查询:LIKE
    SELECT * FROM emp WHERE enaem LIKE '_A%';
  1. “_”表示任意一个字符
  2. “%”表示任意零个,一个或多个字符
  • 差值:MINUS 
  • 交集:INTERSECT

不添加关键字则查取全部,

顺序查询

ORDER BY

  • ASC(默认)——升序
  • DESC————降序
SELECT * FROM emp  ORDER BY sal DESC;

 

你可能感兴趣的:(Oracle笔记)