赞
踩
目录
2、group by 关键字与 group_concat()函数一起使用
8.8 使用{M} 或者{M,N}来指定字符串连续出现的次数
查询数据是指从数据库中获取所需要的数据。查询数据是数据库操作中最常用,也是最重要的操作。用户可以根据自己对数据的需求,使用不同的查询方式。通过不同的查询方式,可以获得不同的数据。在MySQL 中是使用SELECT语句来查询数据的。
查询数据是数据库操作中最常用的操作。通过对数据库的查询,用户可以从数据库中获取需要的数据。数据库中可能包含着无数的表,表中可能包含着无数的记录。因此,要获得所需的数据并非易事。MySQL中可以使用SELECT 语句来查询数据。根据查询的条件的不同,数据库系统会找到不同的数据。通过SELECT语句可以很方便地获取所需的信息。
MysQL中,SELECT的基本语法形式如下:
select 属性列表
from 表名和视图列表
[where 条件表达式1]
[group by 属性名1 [having 条件表达式2]]
[order by 属性名2 [asc | desc]]
其中,“属性列表”参数表示需要查询的字段名;“表名和视图列表”参数表示从此处指定的表或者视图中查询数据,表和视图可以有多个;“条件表达式1”参数指定查询条件;“属性名1”参数指按该字段中的数据进行分组;“条件表达式2”参数表示满足该表达式的数据才能输出;“属性名2”参数指按该字段中的数据进行排序,排序方式由ASC和 DESC两个参数指出;ASC参数表示按升序的顺序进行排序,这是默认参数;DESC参数表示按降序的顺序进行排序。
升序表示值按从小到大的顺序排列。例如,{1,2,3}这个顺序就是升序。降序表示值按从大到小的顺序排列。例如,{3,2,1}这个顺序就是降序。对记录进行排序时,如果没有指定是ASC还是DESC,默认情况下是ASC。
如果有WHERE子句,就按照“条件表达式1”指定的条件进行查询;如果没有WHERE子句,就查询所有记录。
如果有GROUP BY子句,就按照“属性名1”指定的字段进行分组;如果GROUP BY子句后带着HAVING关键字,那么只有满足“条件表达式2”中指定的条件的才能够输出。GROUP BY子句通常和COUNTO、SUM()等聚合函数一起使用。
如果有ORDER BY子句,就按照“属性名2”指定的字段进行排序。排序方式由“ASC”和“DESC”两个参数指出。默认的情况下是“ASC”。
下面是一个简单 SELECT语句来查询 employee表。SELECT 语句的代码如下:
【一个小插曲】在创建employee表并插入数据的过程中,出现了错误。
经向度娘了解,是因为插入的数据中有中文,而默认latin1的编码方式不太支持,所以这里的解决方法是将创建好的employee表删除,更改数据库编码方式 alter database 库名charset = 编码方式,再创建表,插入数据,没有报错。
语句执行后,从 employee表中查询出num、name、age、sex和 homeaddr等5个字段的所有记录。因为没有WHERE子句来控制查询条件,默认情况下显示了所有记录。因为没有GROUP BY子句和ORDER BY子句,记录按照employee表中存储的顺序显示。
下面是一个包含WHERE子句和ORDER BY子句的SELECT 语句。SELECT语句的代码如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。