前言:学习过程中,不对的地方请谅解
select语句控制查看,根据限定规则匹配信息,常用的有单表查询、多表查询、联合查询
select的执行流程:from-->where-->group by-->having-->order by-->select-->limit
用法规则
SELECT
column_1, column_2, ...
FROM
table_1
//多表查询连接类型cross join,inner join,left join和right join等
WHERE
conditions
GROUP BY column_1
HAVING group_conditions
ORDER BY column_1
LIMIT offset, length;
SELECT语句由以下列表中所述的几个子句组成:
- SELECT之后是逗号分隔列或星号(*)的列表,表示要返回所有列。
- FROM指定要查询数据的表或视图。
- JOIN根据某些连接条件从其他表中获取数据。
- WHERE过滤结果集中的行。
- GROUP BY将一组行组合成小分组,并对每个小分组应用聚合函数。
- HAVING过滤器基于
- GROUP BY子句定义的小分组。
- ORDER BY指定用于排序的列的列表。
- LIMIT限制返回行的数量。
单表查询---示例
mysql> show databases; //进入mysql 查看所有的数据库
mysql> use yiibaidb; //进入yiibaidb 数据库
mysql> show tables; //查看yiibaidb这个库中的所有表
mysql> desc customers; //查看一下customers这个表的结构
进入示例库
查看表结构
1、查customers表中所有数据和只要customerName(限制显示10行)
select * from customers limit 10; //查询全部用*
select customerName from customers limit 10 ; //查询特定列
使用select进行单表查询
2、查customers表中多列【使用,】(限制显示10行)
mysql> select customerNumber,customerName,addressLine1 from customers limit 10;
使用select 查询多列信息
3、再加一条语句的前提下再加一个限制条件where
select customerNumber,customerName,addressLine1 from customers where customerNumber >= 120 limit 10;
使用where进行限制查询
where:布尔条件表达式
= # 等值比较
<=> # 等值比较,包括与NULL的安全比较
<>或!= # 不等值比较
<,<=,>,>= # 其它比较符
IS NULL # 是否为空值
IS NOT NULL # 是否不为空值
LIKE # 支持的通配符有%和_
RLIKE或REGEXP # 正则表达式匹配
IN # 判指定字段的值是否在给定的列表中
BETWEEN … AND … # 在某取值范围内
多练习几个
mysql> select * from customers where customerName = "Mini Wheels Co."; //查询表customers中 customerName的值是“Mini Wheels Co.”的所有信息
mysql> select city from customers where customerName = "Mini Wheels Co."; //查询表customers中 customerName的值是“Mini Wheels Co.”的所有信息中的city值
练习
上一篇文章:《mysql学习2:下载并导入示例库》
下一篇文章:《mysql学习4:select基础---多表查询-1》