sql语法1

来源:互联网 发布:金和网络财报2017 编辑:程序博客网 时间:2024/06/07 22:40

关系数据库标准语言SQL / 1

1 SQL语言初步

                  数据查询语句

                  数据库更新语句

                  数据定义语句

                  数据控制语句

什麽是SQL

l  SQLStructured query language

l  功能:查询、操纵、定义、控制

l  特点:1、一体化;

                         2、两种使用方式,统一的语法结构;

                        方式一、联机交互使用方式;

                        方式二、嵌入式。

                         3、高度非过程化;

                         4、语言简洁,易学易用。

  SQL支持关系数据库三级模式

基本表:独立存在的表。每个基表对应一个存储文件,一个表可带若干索引。

                           存储文件+索引=内模式

视图:是一个虚表。数据库中仅存视图定义,不存对应的数据。

SQL的三级模式     

SQL命令的种类

l  DDL,数据定义语言

l  DML,数据操纵语言

l  DQL,数据查询语言

l  DCL,数据控制语言

l  数据管理命令

l  事务性控制命令

DDL,数据定义语言

l  用户创建或重新构建数据库的语言

l  CREATE TABLE

l     ALTER TABLE

l     DROP TABLE

l  CREATE INDEX

l  ALTER INDEX

l  DROP INDEX

DML,数据操纵语言

l   用于在关系数据库对象中操纵数据

   INSERT

   UPDATE

   DELETE

DQL,数据查询语言

l   对数据库中的信息寻找和定位

   SELECT

DCL,数据控制语言

l   用于创建与用户访问相关的对象,也控制着用户的权限分配

   ALTER PASSWORD改变口令

   GRANT为用户授予特权

   REVOKE从用户处收回特权

数据管理命令

l   审计和分析对数据库的操作,并可分析系统的执行过程

   START AUDIT

   STOP AUDIT

事务性控制命令

l   用户管理数据库的事务命令

COMMIT用于保护数据库的事务

ROLLBACK用于撤消数据库的事务

SAVEPOINT创建一组事务中的撤消点

SET TRANSACTION给事务命名

数据库中的表结构

l   数据库中的表

l   数据和基本数据类型

数据库中的表

表:字段、记录、列、主键

 

数据和基本数据类型

l   数据是存储在数据库中的信息集合。数据类型用于给特定的数据提供规则。

l   基本数据类型包括:

   字符串

   数字

   日期和时间值

字符串

l   定长字符串:

            CHARACTERn

l   变长字符串:

            CHARACTER VARYINGn

数字值

l  BIT(n)

l  BIT VERYING(n)

l  DECIMAL(n,n)

l  INTEGER

l  SMALLINT

l  FLOAT(p)

l  REAL(s)

l  DOUBLE PRECISION(p)

日期和时间值

l  DATE(YEAR,MONTH,DAY)

l  TIME(HOUR,MINUTE,SECOND)

l  INTERVAL

l  TIMESTAMP

NULL值:为空。

数据查询语句

l   语法:

l   SELECT [ * | all | column1,column2 ]

   FROM  table1 [ ,table2 ]

   [ WHERE condition ]

   [ GROUP BY column1 ]

   [ ORDER BY column2(asc,desc)]

Desc:按列取值相等的原则进行分组

Asc:按列值进行排序

l   1SELECT *FROM products_tbl                               WHERE  cost < 5

l   2SELECTprod_desc,cost

                FROM products_tbl                                                    WHERE prod_id = ‘119’

l   3:多表查询

                SELECT employee_tbl.emp_name,                                         employee_pay_tbl.position

                FROM employee_tbl, employee_pay_tbl

                     WHERE  employee_tbl.emp_id =                                             employee_pay_tbl.emp_id

SQL中操作符的使用

定义:操作符是保留的字或字符,主要用于比

          较和算术运算。

分类:比较操作符,逻辑操作符和算术运算符。

1、比较操作符

   包括:=<>,>, <, <=, >=

   注意比较双方的数据类型。

2、算术运算符

   包括:+-*/等。

   与数学运算规则一致。

 

2、逻辑操作符

l   IS NULL(是否为空)

l   BETWEEN(在某两个值之间)

l   IN(一系列值中)

l   LIKE(相似值的比较)

l   EXITS(是否存在符合条件的数据)

l   UNIQUE(是否唯一)

l   ALL/ANY(一组数据的所有/其中的任何一个)

l   AND/OR(逻辑与/或)

ISNULL / IS NOT NULL

l   WHERE salary IS NULL  

   工资为空值。

l   WHERE salary = NULL  

   工资中含有NULL字符。

l   例:

l   SELECT  emp_id, emp_name

   FROM  employee_tbl

   WHERE  emp_phone IS NULL

BETWEEN

l   WHERE  salary  BETWEEN 200 and 300

   工资在200300之间,包括200300

IN

l   WHERE salary  IN  (200300400

   工资必须是200300400之中的值。

LIKE

l   使用匹配符将一个值同其相似的值比较。

l   匹配符包括:-代表一个字符。

                               %代表多个字符。

l   如:

            WHERE salaryLIKE  ‘-00’

           查找‘00’作为后两位数的值。

            WHERE salaryLIKE  ‘200%’

           查找‘200’作为前三位数的值。

EXISTS

l   查询在指定表中是否存在一行符合某种条件的数据。

l   WHERE EXISTS

   SELECTemployee_id

            FROM  employee_tbl

            WHERE employee_id =‘3333’)

UNIQUE

l   在特定的表中搜索每一行是否唯一。

l   WHERE UNIQUE

            (SELECT salary

              FROM employee_tbl

              WHERE employee_id = ‘3333’)

l   测试满足条件的工资是否有重复数据。

ALL/ANY

l   与某个数据集中所有数据 /任何一个进行比较。

l   WHERE  salary > all

            (SELECT salary

              FROM employee_tbl

              WHERE city = ‘INDIAN’)

 

 

 

 

 

 

0 0
原创粉丝点击