Oracle数据库常用基本语句(oracle数据库常用sql)

网友投稿 691 2022-08-28

Oracle数据库常用基本语句(oracle数据库常用sql)

Oracle数据库常用基本语句(oracle数据库常用sql)

本文主要是介绍Oracle数据库中一些常用的基本语句,希望对大家有所帮助哦~

一、对显示的数据的格式进行调整

1、设置每行显示的数据长度:SET LINESIZE 300;  //300及30是可以自己设置的

2、设置每次显示的行数,设置分行:SET  PAGESIZE 30;

3、针对某行进行格式操作:COL 列名称 FOR  A 长度   例:col job FOR A20;

二、常用的数据库的操作

1、查看当前用户:show user

2、切换用户:conn  用户名【/密码 】【as  sysdba】

范例:切换到system用户      CONN system/manager

范例:切换到sys用户   CONN sys/change_on_install AS SYSDBA

三、SQL的三大语言

1、DML(数据操作语言):数据库的更新与查询(SELECT,FROM,INSET,GROUP BY, HAVING,UPDATE, DELETE),在开发之中几乎都是以DML操作为主的。

2、DDL(数据定义语言):数据库对象的定义语言,例如:数据表,约束,索引,同义词,用户在设计数据库设计的时候都必须掌握。

3、DCL(数据库控制语言):数据库的权限控制。

四、SQL基础查询语句

一、基本查询操作

1、 SELECT  [DISTINCT]  * | 列1[别名1],列2[别名2],……

FROM 表名称[表别名];

例1:select * from emp;  查询emp表的全部内容

例2:select empno ,ename ,sal ,job form emp;  查询emp表中的雇员编号、姓名、职位、基本工资的信息

例3:select empno 雇员编号,sal*12 年薪 from emp; 查询emp表中的empno且计算员工的年薪,在输出表格中,设置别名显示

二、限定查询

1、逻辑运算可以保证连接多个条件,主要的逻辑连接符有AND,OR,NOT

范例:要求查询出不是办事员,但是工资低于3000的雇员

SELECT *

FROM emp

WHERE job<>’CLERK’ AND sal < 3000 ;

范例:查询出职位是办事员,或者工资低于1200的所有雇员

SELECT *

FROM emp

WHERE job=’CLERK’ AND sal<1200;

范例:查出工资低于2000的员工的信息

SELECT *

FROM emp

WHERE NOT sal > 2000;

三、范围限定查询

BETWEEN…AND 的主要功能是进行范围的查询,其使用语法形式如下:

WHERE 字段|数字BETWEEN 最小值 AND 最大值。

范例:查询出工资在1500-3000之间的所有雇员

SELECT *

FROM emp

WHERE sal BETWEEN 1500 AND 3000;

四、空判断

对于数据库中的数据,除了限定了非空约束的列,其他的数据是允许存在空值的,但是在任何情况下,一个数字与null进行计算,那么结构还是为null。所以在进行查询计算的时候,应该要进行空判断,之后要对null进行处理。

范例:

SELECT *

FROM emp

WHERE comm IS NOT NULL;

五、in、not in 操作符

IN,NOT IN指的是根据一个指定的范围进行数据查询。

范例:查询出雇员编号是7369、7566、7788、9999的雇员信息。

SELECT *

FROM emp

WHERE empno IN (7369,7566,7788,9999);

注意:在使用NOT IN的时候如果查找的数据范围之中包含有null值,那么不会有任何的查询结果返回,IN操作无此限制。

六、模糊查询:like

LIKE可以实现数据的模糊查询操作,如何要想使用LIKE则必须使用如下的两个符号:

“.”:匹配任意的一位符号;

“%”:匹配任意的符号(包含匹配0位,1位,多位);

范例:查询所有雇员姓名中一字母A开头的雇员信息

SELECT *

FROM emp

WHERE ename LIKE 'A%';

范例:查询所有雇员姓名中第二个字母是A的所有雇员

第一位可以人任意,但是必须占一位字符,使用“_”;

后面的位随便,使用“%”。

SELECT *

FROM emp

WHERE ename LIKE '_A%';

范例:查询雇员姓名中任意位置上存在有字母A的雇员信息

SELECT *

FROM emp

WHERE ename LIKE '%A%';

七、指定顺序查询

ORDER BY 排序字段 [ASC|DESC],排序字段 [ASC|DESC], …

升序:ASC,默认不写排序也是升序;

降序:DESC,由高到低进行排序。

范例:按照工资由高到底排序(降序)

SELECT * FROM emp ORDER BY sal DESC;

范例:按照工资由高到底排序(降序),如果工资相同,则按照雇佣日期由早到晚排序。

SELECT * FROM emp ORDER BY sal DESC,hiredate ASC;

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:2020年web应用测试省赛功能测试答案
下一篇:openEuler 资源利用率提升之道02:典型应用下的效果
相关文章

 发表评论

暂时没有评论,来抢沙发吧~