SQL语句

SQL(Structured Query Language )被称为结构化查询语,SQL 是操作和检索关系型数据库的标准语言。SQL是在90年代开发出来的,最早使用SQL的数据库就是Oracle,而且随着时间的发展,基本上只要是数据库都支持了SQL语句,不同的数据库会存在在若干差异,但是基本的核心语法永远都是一样的。

Sql语句很多,在oracle数据库中,主要的sql语句分为5大类

  • Select查询语句 DQL
  •  DML语句(数据操作语言)

               Insert / Update / Delete/merge

  •  DDL语句(数据定义语言)

                Create / Alter / Drop / Truncate(删除数据立即生效)

  • DCL语句(数据控制语言)

                       Grant(赋于权限 ) / Revoke(回收权限 )

  • 事务控制语句

                       Commit / Rollback / Savepoint

  模式和模式对象
  一个模式(schema)为模式对象(scehma object)的一个集合,每一个数据库用户对应一个模式。模式对象为直接引用数据库数据的逻辑结构,模式对象包含如表、视图、索引、聚集、序列、同义词、数据库链、过程和包等结构。模式对象是逻辑数据存储结构,每一种模式对象在磁盘上没有一个相应文件存储其信息。一个模式对象逻辑地存储在数据库的一个表空间中,每一个对象的数据物理地包含在表空间的一个或多个数据文件中。

筛选查询语句 

简单查询之中是将所有的内容一起进行显示,可是,在某些时候是需要进行数据筛选的,例如:查询工资范围1000~1500的,或者是查询雇佣时间在1980年的,此时就必须使用限定查询的语法,也只是增加了一个WHERE子句而已。

SELECT [DISTINCT] * | 列 别名,列 别名,....

FROM 表名称 [别名]

[WHERE 条件(s)] ;

对结果排序 

在之前的查询中,有一定的顺序,但是这个顺序是由数据库自己指定的,如果现在希望可以按照某些字段排序,例如:基本工资或雇佣日期,则就必须使用ORDER BY子句完成排序操作。

SELECT [DISTINCT] * | 列 别名,列 别名,....

FROM 表名称 [别名]

[WHERE 条件(s)]

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

          ASC表示的是升序(默认),而DESC表示的是降序(需要自己指定)。

 

多表关联查询(连接查询)

之前的所有查询都是从emp一张表中取出的数据,如果现在要求从多张表中一起查询数据的话,那么就必须使用多表查询的概念,以下是多表查询的语法:

SELECT [DISTINCT] * | 列 别名,列 别名

FROM 表名称1 别名,表名称2 别名,....

[WHERE 条件(s)] [ORDER BY 排序字段 ASC | DESC,排序字段 ASC | DESC] ;

单行函数

         数据库从使用来讲,有很多种,但是对于程序人员最需要掌握的实际上是两块内容:SQL语句、单行函数,而所谓单行函数就是指可以完成某些固定操作的函数,由数据库提供,一般单行函数的语法如下:

函数名称(操作的列 | 具体的数值 [,若干参数])

         在Oracle之中,单行函数主要分为以下的五种:字符串函数、数值函数、转换函数、日期函数、通用函数,只有掌握这些函数之后,才可以让开发变得更加的方便。

字符函数

         字符函数主要是指的接收一个字符,同时将字符处理之后返回,常用的字符函数有:UPPER()、LOWER()、INITCAP()、REPLACE()、LENGTH()、SUBSTR()、CONTACT()。

         但是在调用函数操作的时候,Oracle有一点不方便:所有的操作必须按照标准的SQL语句编写。

范例:进行大小写转换,UPPER()、LOWER()

SELECT UPPER('Hello'),LOWER('Hello') FROM emp ;

数值函数

         数值函数常用经常面试有三种:ROUND()、TRUNC()、MOD()

范例:验证ROUND()函数 —— 表示的是四舍五入,而且是带小数点的

SELECT ROUND(789.63871) FROM dual ;

         直接使用ROUND()函数则意味着直接将小数点之后的内容进行四舍五入。

日期函数

         在讲解日期函数之前必须首先先确定一个问题,如何取得当前的系统时间,如果要取的话直接使用SYSDATE即可。

SELECT SYSDATE FROM dual ;

          在日期操作中有如下的三个计算公式:(注意:这是在数据库中才成立

                  1、   日期 – 数字 = 日期;

                  2、   日期 + 数字 = 日期;

                  3、   日期 – 日期 = 数字(天数);

转换函数

         在Oracle之中可以将字符串、数字、日期型数据进行互相的转换,使用TO_CHAR()、TO_DATE()、TO_NUMBER()三个函数完成。

 范例:观察日期的转换,将日期变为字符串

SELECT TO_CHAR(SYSDATE,'yyyy-mm-dd') FROM dual ;

聚合函数

组函数(统计函数)

         在SQL语法之中,定义了以下的几个常用的统计函数:

                  1、   COUNT():统计数据量;

                  2、   SUM():求和;

                  3、   AVG():求平均;

                  4、   MAX():最大值;

                  5、   MIN():最小值;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值