查询数据指从数据库中获取所需要的数据。查询数据是数据库操作中最常用,也是最重要的操作。用户可以根据自己对数据的需求,使用不同的查询方式。通过不同的查询方式,可以获得不同的数据。MySQL中是使用SELECT语句来查询数据的。
基本查询语句
查询数据是数据可以操作中最最常用的操作。通过对数据库的操作,用户可以从数据库中获取需要的数据。数据库中可能包含着无数的表,表中可能包含着无数的记录。因此,要获得所需的数据并非易事。mysql中使用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参数表示按降序的顺序进行排序。
如果有where子句,就按照‘条件表达式1’指定的条件进行查询,如果没有,就查询所有记录。
如果有GROUP BY子句,就按照‘属性名1’指定的字段进行分组,如果后面带有HAVING关键字,那么只有满足‘条件表达式2’中指定的条件才能够输出。GROUP BY子句通常和count()、SUM()等聚合函数一起使用。
如果有ORDER BY子句,就按照‘属性名2’指定的字段进行排序,排序方式由‘ASC’和‘DESC’两个参数指出。默认的情况下是‘ASC’。
单表查询
单表查询是指从一张表中查询所需要的数据。查询数据时,可以从一张表中查询数据,也可以从多张表中同时查询数据。两者的查询方式由一定的区别。因为单表查询只在一张表上进行操作,所以查询比较简单。
查询所有的字段
查询所有字段是指查询表中所有字段的数据。这种方式可以将表中所有字段的数据都查询出来,mysql中有两种方式可以查询表中所有的字段。
1.列出表的字段
2.使用“*”查询所有字段
查询指定字段
查询数据时,可以在select语句的‘属性列表’中列出所要查询的字段。这种方式可以指定需要查询的字段,而不需要查询出所有的字段。
查询指定条件
select语句中可以设置查询条件。用户可以根据自己的需要来设置查询条件,按条件进行查询。查询的结果必须满足查询条件。其语法规则如下:
where 条件表达式
带IN关键字的查询
IN关键字可以判断某个字段的值是否在指定的集合中。如果字段的值在集合中,则满足查询条件,该记录将被查询出来。如果不在集合中,则不满足查询条件。其语法规则如下:
[not] in (元素1,元素2,...,元素n)
in图:
not in 图:
带BETWEEN AND的范围查询
BETWEEN AND关键字可以判断某个字段的值是否在指定的范围内。如果字段的值在指定范围内,则满足查询条件,该记录将被查询出来。如果不在指定范围内,则不满足查询条件。其语法规则如下:
[NOT] BETWEEN 取值1 AND 取值2
带LIKE的字符匹配查询
LIKE关键字可以匹配字符串是否相等。如果字段的值与指定的字符串相匹配,则满足查询条件,该记录将被查询出来。如果与指定的字符串不匹配,则不满足查询条件。其语法规则如下:
[NOT] LIKE ‘字符串’
1.匹配完整字符串
2.匹配使用通配符'%'的字符串(%代表后面、中间和前面的所有字符)
3.匹配使用通配符'_'的字符串(_代表其中的一个字符)