MYSQL SELECT查询语句的用法(附带实例)
MySQL 从数据表中查询数据的基本语句为 SELECT 语句。
SELECT 语句的基本格式如下:
SELECT [字段1,字段2,...,字段n] 的可选参数比较多,下面以一个例子说明如何使用 SELECT 从单张表中获取数据。
首先定义数据表,SQL 语句如下:
为了演示如何使用 SELECT 语句,需要插入如下数据:
使用 SELECT 语句查询 f_id 字段的数据:
SELECT 语句的基本格式如下:
SELECT {* | <字段列表>} [ FROM <表1>,<表2>... [WHERE <表达式> [GROUP BY <group by definition>] [HAVING <expression> [{<operator> <expression>}...]] [ORDER BY <order by definition>] [LIMIT [<offset>,] <row count>] ] SELECT [字段1,字段2,...,字段n] FROM [表或视图] WHERE [查询条件];各条子句的含义如下:
- {* | <字段列表>}:包含星号通配符和字段列表,表示查询的字段。其中,字段列表至少包含一个字段名称。如果要查询多个字段,多个字段之间用英文逗号隔开,最后一个字段后不加逗号。
- FROM <表1>,<表2>...:表 1 和表 2 表示查询数据的来源,可以是单个或者多个表。
- WHERE<表达式>:该子句是可选项,如果选择该项,将限定查询行必须满足的查询条件。
- GROUP BY <字段>:该子句告诉 MySQL 如何显示查询出来的数据,并按照指定的字段分组。
- [HAVING <查询条件>]:用来过滤数据。和 WHERE 不同的是,WHERE 在数据分组前过滤,而 HAVING 在数据分组后进行过滤。
- [ORDER BY <字段>]:该子句告诉 MySQL 按什么样的顺序显示查询出来的数据,可以使用的排序方法有升序(ASC)、降序(DESC)。
- [LIMIT [<offset>,] <row count>]:该子句告诉 MySQL 每次显示查询出来的数据条数。
SELECT [字段1,字段2,...,字段n] 的可选参数比较多,下面以一个例子说明如何使用 SELECT 从单张表中获取数据。
首先定义数据表,SQL 语句如下:
CREATE TABLE fruits ( f_id char(10) NOT NULL, s_id INT NOT NULL, f_name char(255) NOT NULL, f_price decimal(8,2) NOT NULL, PRIMARY KEY(f_id) );
为了演示如何使用 SELECT 语句,需要插入如下数据:
mysql> INSERT INTO fruits (f_id, s_id, f_name, f_price) VALUES('a1', 101,'apple',5.2), ('b1',101,'blackberry', 10.2), ('bs1',102,'orange', 11.2), ('bs2',105,'melon',8.2), ('t1',102,'banana', 10.3), ('t2',102,'grape', 5.3), ('o2',103,'coconut', 9.2), ('c0',101,'cherry', 3.2), ('a2',103, 'apricot',2.2), ('l2',104,'lemon', 6.4), ('b2',104,'berry', 7.6), ('m1',106,'mango', 15.7), ('m2',105,'xbabay', 2.6), ('t4',107,'xbababa', 3.6), ('m3',105,'xxtt', 11.6), ('b5',107,'xxxx', 3.6);
使用 SELECT 语句查询 f_id 字段的数据:
mysql> SELECT f_id, f_name FROM fruits; +------+------------+ | f_id | f_name | +------+------------+ | a1 | apple | | a2 | apricot | | b1 | blackberry | | b2 | berry | | b5 | xxxx | | bs1 | orange | | bs2 | melon | | c0 | cherry | | l2 | lemon | | m1 | mango | | m2 | xbabay | | m3 | xxtt | | o2 | coconut | | t1 | banana | | t2 | grape | | t4 | xbababa | +-----+-------------+该语句的执行过程是,SELECT 语句决定了要查询的列值,在这里查询 f_id 和 f_name 两个字段的值;FROM 子句指定了数据的来源,这里为数据表 fruits,因此返回结果为表 fruits 中 f_id 和 f_name 两个字段下的所有数据。其显示顺序为添加到表中的顺序。