数据查询语言
l 语法:
l SELECT [ * | all | column1,column2 ]
FROM table1 [ ,table2 ]
[ WHERE condition ]
[ GROUP BY column1 ]
[ ORDER BY column2(asc,desc) ]
l 例1:SELECT * FROM products_tbl WHERE cost < 5
l 例2:SELECT prod_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、算术运算符
包括:+,-,*,/等。
与数学运算规则一致。
逻辑操作符
l IS NULL(是否为空)
l BETWEEN(在某两个值之间)
l IN(一系列值中)
l LIKE(相似值的比较)
l EXITS(是否存在符合条件的数据)
l UNIQUE(是否唯一)
l ALL/ANY(一组数据的所有/其中的任何一个)
l AND/OR(逻辑与/或)
IS NULL/ 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
LIKE
l 使用匹配符将一个值同其相似的值比较。
l 匹配符包括:-代表一个字符。
%代表多个字符。
l 如:
WHERE salary LIKE ‘-00’
查找‘00’作为后两位数的值。
WHERE salary LIKE ‘200%’
查找‘200’作为前三位数的值。
EXISTS
l 查询在指定表中是否存在一行符合某种条件的数据。
l WHERE EXISTS
(SELECT employee_id
FROM employee_tbl
WHERE employee_id = ‘3333’)
UNIQUE
l 在特定的表中搜索每一行是否唯一。
l WHERE UNIQUE
(SELECT salary
FROM employee_tbl
WHERE employee_id = ‘3333’)
l 测试满足条件的工资是否有重复数据。
AND/OR
l AND连接的条件必须都满足。
l OR连接的条件至少满足一个。
l 如:SELECT *
FROM products_tbl
WHERE cost > 10 and cost < 30
l 如:SELECT *
FROM products_tbl
WHERE prod_id = ‘7725’
or prod_id = ‘2345’
统计函数
l 统计函数:用于提供统计信息,如:累加、总和、平均值。
l 主要的统计函数:
l COUNT:统计行数或不为NULL的列数。
l SUM:求和。
l MAX:求最大值。
l MIN:求最小值。
l AVG:求平均值。
Count
SELECT COUNT(*)
FROM EMPLOYEE_TBL 统计雇员表中所有行数
SELECT COUNT(EMP_ID)
FROM EMPLOYEE_TBL 统计所有雇员身份证号
SELECT COUNT(DISTINCT SALARY)
FROM EMPLOYEE_PAY_TBL 统计唯一行数
SUM
语法:
SUM([DISTINCT] COLUMN NAME)
举例:
SELECT SUM(SALARY)
FROM EMPLOYEE_PAY_TBL 计算工资总和
SELECT SUM(DISTINCT SALARY)
FROM EMPLOYEE_PAY_TBL 计算没有重复工资总和
AVG
语法:
AVG(