SQL语法使用详解

SQL

语法

SELECT 、FROM、WHERE、GROUP BY、HAVING、ORDER BY、INSERT、UPDATE、DELETE、CREATE、DROP、ALERT、GRANT、REVOKE

SQL分为三种类型

DML(数据操作语言):主要指数据库的查询与更新操作; DDL(数据定义语言):主要指的是数据对象的创建(表,用户); DCL(数据库控制语言):主要是进行权限的管理操作;

SCOTT用户,一共有四张表

命令一:查询一个用户下的所有数据表

SELECT* FROM tab;

命令二:查询一个表的结构

DESC 表名称

1、部门信息表(dept)

No

字段名

类型

描述

1

DEPTNO

NUMBER2(2)

表示部门编号,最多由2位数字组成

2

DNAME

VARCHAR2(14)

表示部门名称,最多由14个字符组成

3

LOC

VARCHAR2(13)

表示部门位置,最多由13个字符组成

2、雇员表(emp)

No

字段名

类型

描述

1

EMPNO

NUMBER(4)

雇员编号,最多有4位数字组成

2

ENAME

VARCHAR2(10)

雇员姓名

3

JOB

VARCHAR2(9)

雇员职位

4

MGR

NUMBER(4)

雇员的领导的编号

5

HIREDATE

DATE

雇佣日期

6

SAL

NUMBER(7,2)

基本工资,小数点最多占2位,整数最多占5位

7

COMM

NUMBER(7,2)

佣金(提成)一般只有销售才有

8

DEPTNO

NUMBER(2)

所属部门的编号

3、工资等级表(salgrade)

No

字段名

类型

描述

1

GRADE

NUMBER

工资等级编号

2

LOSAL

NUMBER

此等级的最低工资

3

HISAL

NUMBER

此等级的最高工资

4、工资表(bonus)

No

字段名

类型

描述

1

ENAME

VARCHAR2(10)

雇员姓名

2

JOB

VARCHAR2(9)

雇员职位

3

SAL

NUMBER

雇员工资

4

COMM

NUMBER

雇员佣金

bonus表中没有任何数据

SQL简单查询

1、SELECT[DISTINCT] 字段名1,字段名2 … * FROM 表名;

SELECT * FROM emp; SELECT ename,job FROM emp;

2、消除重复DISTINCT

SELECT DISTINCT job FROM emp;

3、连接输出列:||

SELECT empno || ename 别名 FROM emp;

SQL限定查询

SELECT*|字段名[别名]… FROM 表名;

1、关系运算符

>、<、>=、<=、<>(!=);

2、逻辑运算符

AND、OR、NOT;

SELECT * FROMemp WHERE NOT sal >2000;

3、范围运算符

BETWEEN…AND;

BETWEEN 最小值(数字,日期) AND 最大值; 闭区间

4、谓词范围

IN、NOT IN;

SELECT * FROM empWHERE empno IN (7369 , 7566 , 9999 ) ;

NOT IN (不能有 null ) 否则不会有任何结果返回 ;

5、空判断

IS NULL、IS NOT NULL;

空不代表 0 ;

 

6、模糊查询

LIKE;

通配符:

‘_’:匹配任意一位字符; ‘%’:匹配任意的零位、一位或多位字符;

注意:

LIKE可以应用在各种数据类型上,不一定非要是字符串;

SELECT* FROM emp WHERE empno LIKE ‘%9%’ ;

在使用LIKE模糊查询的时候,如果不设置查询关键字,表示查询全部; SELECT * FROM emp WHERE empno LIKE ‘%%’ ;

SQL查询排序(ORDER BY)

(3)SELECT

(1)FROM

(2)WHERE

(4)ORDER BY 字段 [ASC | DESC] , 字段 [ASC |DESC] , … ;

默认ASC排序,升序;DESC降序;

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐