sql (一) : sql简介,及简单查询语句

时间:2020-12-31 00:48:14

一、sql简介

  结构化查询语言(Structured Query Language)简称SQL(发音:/ˈɛs kjuː ˈɛl/ "S-Q-L"),结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

    结构化查询语言包含以下几个部分:

   (1) .  数据查询语言(DQL:Data Query Language):
其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。
  (2)   .数据操作语言(DML:Data Manipulation Language):
其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言。
  (3) 事务处理语言(TPL):
它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。
  (4) 数据控制语言(DCL):
它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。
 (5) 数据定义语言(DDL):
其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。


二、sql的练习要使用的表

 以下sql练习是基于以下几张表的,遂将表展示如下:

雇员表(EMP)
NO. 字段 类型 描述
1 EMPNO NUMBER(4) 雇员编号,为唯一编号
2 ENAME VARCHAR(10) 雇员的姓名
3 JOB VARCHAR(9) 表示工作的职位
4 MGR NUMBER(4) 表示雇员的领导编号
5 HIRDATE DATE 表示雇佣日期
6 SAL NUMBER(7,2) 表示月薪
7 COMM NUMBER(7,2) 表示奖金
8 DEPTNO NUMBER(2) 部门编号


部门表(dept)
NO. 字段 类型 描述
1 DEPTNO NUMBER(2) 部门编号
2 DNAME VARCHAR(14) 部门名称
3 LOC VARCHAR(13) 部门位置


工资等级(salGrade)
NO. 字段 类型 描述
1 GRADE NUMBER 等级名称
2 LOSAL NUMBER 最低工资
3 HISAL NUMBER 最高工资


奖金表(BONUS)
NO 字段 类型 描述
1 ENAME VARCHAR(10) 雇员姓名
2 JOB VARCHAR(9) 工资名称
3 SAL NUMBER 雇员工资
4 COMM NUMBER 雇员奖金

三、简单查询语句

      简单查询语句的格式是: 

select * | 具体的列 别名  
from 表名称
     1. 查询emp表中所有的列

            select * from emp

    2. 如果只需要查询出emp表中雇员的编号、姓名、工作的话

        select empno, ename, job from emp

   3. 对查询结果中的列起别名

       select empno 编号, ename 姓名, job 工作 from emp

   4.  使用DISTINCT去掉查询结果中的重复列

select {DISTINCT} * | 具体的列 别名 form 表名称 
     但是,在消除重复列的时候,有一点必须说明,如果要同时查询多列,则必须保证所有的列都重复才能消除掉


  5.格式化的显示查询结果
        例如:要求查询出雇员的编号,姓名,工作,但是显示的格式
          编号是:7369的雇员,姓名是:SMITH,工作是:CLERK
       要想实现这样的功能,则可以使用ORACLE中提供的字符串连接操作,使用"||"表示。如果要加入一些显示信息的话,其他固定的信息要使用"'"括起来。
   

select '编号是:' || empno || '的雇员,姓名是:' || ename || ',工作是:' || job from emp
 显示结果为:
sql (一) : sql简介,及简单查询语句
sql (一) : sql简介,及简单查询语句sql (一) : sql简介,及简单查询语句


  6. 在查询中也可以使用四则运算,例如:要求求出每个雇员的姓名及年薪

select ename,sal * 12 income from emp
     程序中可以支持+、-、*、/的语句,所有的语句有优先顺序,先乘除后加减...