由于数据查询是数据库操作中最重要和最常用的功能,因此,把SELECT语句从DML中单独列出,作为DQL语句。它主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。
语法如下:
SELECT select_id //选择某个值
[INTO new_table] //把检索结果放到一张新
表里
FROM table //在那张表里进行检索
[WHERE search_condition] //检索条件
[GROUP BY group_by_expression] //分组检索子句
[HAVING search_condition] //分组检索条件
[ODERE BY order_expression[ASC|DESC] ] //结果排序原则
SELECT语句的用法很广,可以根据实际需要,灵活地提取需要的数据,以一张gamer数据表为例,对表中的数据进行检索。
1.选取所有数据
SELECT * FROM gamer
2.部分选择
从表中选择NAME列的所有数据:
SELECT NAME FROM gamer
3.条件选择
从数据库表gamer中选取AGE大于18的数据:
SELECT * FROM gamer WHERE AGE>18
4.排序操作
把选取的数据按照AGE大小升序排列:
SELECT * FROM gamer ORDER BY AGE ASC
5.查询结果保存
把选择的数据存储到一张新表result中:
SELECT * FROM gamer INTO result
6.选择记录数
可以直接查询表中记录的数量:
SELECT COUNT (*) FROM gamer
7.SQL操作符
在使用DQL语言时,需要设定各种查询条件,SQL操作符就是用于这个目的,它相当于其他语言的表达式。
— 比较操作符
=:判断是否相等,相等为TRUE,不等为FALSE。
<>:判断是否不等,不等为TRUE,相等为FALSE。
<,>:大于或小于判断符。
— 逻辑操作符
— IS NULL:判断是否为空,为空值时为TRUE。
需要注意的是,有时候用户可能会使用“WHERE NAME = NULL”这样的语句来作为查询条件,但这并不是判断是否为空值,只是判断是否等于NULL。
— BETWEEN:用于查找处于给出的最大最小值之间的数据。
— IN:用于查找处于给定的数值中的数据。
— LIKE:用于比较相似的值。
— EXISTS:用于查询在指定的表中是否存在一行符合条件的数据。
下面是一些逻辑操作符的使用:
SELECT * FROM gamer WHERE AGE BETWEEN 10 AND 30
SELECT * FROM gamer WHERE AGE IN (10,20,30)
SELECT * FROM gamer WHERE NAME LIKE ‘李%’
SELECT NAME FROM gamer
WHERE EXISTS(SELECT AGE FROM gamer WHERE AGE>100)
在SQL语言中,使用LIKE逻辑操作符时,可以在字符串值中使用通配符,用来代表一类字符串值,其中,用“%”代表任意长度字符,用“_”代表单个字符或数字。
— 连接符
— AND:用于连接WHERE中的多个条件。
— OR :用于判断多个条件中是不是有一个条件的值为真。
— NOT:用于将条件求反,使其他逻辑条件符意思反转。
下面是一些连接符的使用:
SELECT NAME FROM gamer WHERE AGE>10 AND AGE<40
SELECT NAME FROM gamer WHERE AGE = 10 OR AGE = 40
SELECT NAME FROM gamer WHERE AGE NOT IN (10,20,30)
— 算术操作符
— 加——“+”
— 减——“-”
— 乘——“*”
— 除——“/”
使用算术运算符,可以生成各种组合条件,或者得到所需的数据:
SELECT * FROM gamer WHERE (AGE+LEVEL)>100
除了这些常用的SQL语句之外,SQL语言还提供了一些附加的语言元素以及一些数据库管理的命令,用于对日常数据库事务进行处理。
计算机软考网络管理员考试题及答案汇总(21套)
[网络管理员]2017年2月8日计算机软件水平考试网络工程师试卷及答案汇总(17套)
[网络工程师]2017年1月31日2016年下半年软件水平考试成绩查询入口已开通
[考试动态]2017年1月3日2016年上半年全国计算机软件水平考试证书领取时间
[考试动态]2016年12月15日人力资源社会保障部2017年计算机技术与软件考试计划及有关问题通知
[考试动态]2016年12月2日