首页 / MYSQL / MySQL教程66-数据表查询语句
MySQL教程66-数据表查询语句
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了MySQL教程66-数据表查询语句,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3369字,纯文字阅读大概需要5分钟。
内容图文
在 MySQL 中,可以使用 SELECT 语句来查询数据。查询数据是指从数据库中根据需求,使用不同的查询方式来获取不同的数据,是使用频率最高、最重要的操作。
SELECT 的语法格式如下:
SELECT { * | <字段列名>} [ FROM <表 1>, <表 2>… [WHERE <表达式> [GROUP BY <group by definition> [HAVING <expression> [{<operator> <expression>}…]] [ORDER BY <order by definition>][LIMIT[<offset>,]<row count>] ]
其中,各条子句的含义如下:
-
{*|<字段列名>}
包含星号通配符的字段列表,表示所要查询字段的名称。 -
<表 1>,<表 2>…
,表 1 和表 2 表示查询数据的来源,可以是单个或多个。 -
WHERE <表达式>
是可选项,如果选择该项,将限定查询数据必须满足该查询条件。 -
GROUP BY< 字段 >
,该子句告诉 MySQL 如何显示查询出来的数据,并按照指定的字段分组。 -
[ORDER BY< 字段 >]
,该子句告诉 MySQL 按什么样的顺序显示查询出来的数据,可以进行的排序有升序(ASC)和降序(DESC),默认情况下是升序。 -
[LIMIT[<offset>,]<row count>]
,该子句告诉 MySQL 每次显示查询出来的数据条数。
下面先介绍一些简单的 SELECT 语句,关于 WHERE、GROUP BY、ORDER BY 和 LIMIT 等限制条件,后面会一一讲解。
查询表中所有字段
查询所有字段是指查询表中所有字段的数据。MySQL 提供了以下 2 种方式查询表中的所有字段。
- 使用“*”通配符查询所有字段
- 列出表的所有字段
1)使用“*”查询表的所有字段
SELECT 可以使用“*”查找表中所有字段的数据,语法格式如下:
SELECT * FROM 表名;
使用“*”查询时,只能按照数据表中字段的顺序进行排列,不能改变字段的排列顺序。
例 1
从 tb_students_info 表中查询所有字段的数据,SQL 语句和运行结果如下所示。
mysql>use test_db; Database changed mysql>SELECT*FROM tb_students_info; +----+--------+---------+------+------+--------+------------+| id | name | dept_id | age | sex | height | login_date |+----+--------+---------+------+------+--------+------------+|1| Dany |1|25| F |160|2015-09-10||2| Green |3|23| F |158|2016-10-22||3| Henry |2|23| M |185|2015-05-31||4| Jane |1|22| F |162|2016-12-20||5| Jim |1|24| M |175|2016-01-15||6| John |2|21| M |172|2015-11-11||7| Lily |6|22| F |165|2016-02-26||8| Susan |4|23| F |170|2015-10-01||9| Thomas |3|22| M |178|2016-06-07||10| Tom |4|23| M |165|2016-08-05|+----+--------+---------+------+------+--------+------------+10 rows inset (0.26 sec)
结果显示,使用“*”通配符时,将返回所有列,数据列按照创建表时的顺序显示。
注意:一般情况下,除非需要使用表中所有的字段数据,否则最好不要使用通配符“*”。虽然使用通配符可以节省输入查询语句的时间,但是获取不需要的列数据通常会降低查询和所使用的应用程序的效率。使用“*”的优势是,当不知道所需列的名称时,可以通过“*”获取它们。
2)列出表的所有字段
SELECT 关键字后面的字段名为需要查找的字段,因此可以将表中所有字段的名称跟在 SELECT 关键字后面。如果忘记了字段名称,可以使用 DESC 命令查看表的结构。
有时,由于表的字段比较多,不一定能记得所有字段的名称,因此该方法很不方便,不建议使用。
例 2
查询 tb_students_info 表中的所有数据,SQL 语句还可以书写如下:
SELECT id,name,dept_id,age,sex,height,login_date FROM tb_students_info;
运行结果和例 1 相同。
这种查询方式比较灵活,如果需要改变字段显示的顺序,只需调整 SELECT 关键字后面的字段列表顺序即可。
虽然列出表的所有字段的方式比较灵活,但是查询所有字段时通常使用“*”通配符。使用“*”这种方式比较简单,尤其是表中的字段很多的时候,这种方式的优势更加明显。当然,如果需要改变字段显示的顺序,可以选择列出表的所有字段。
查询表中指定的字段
查询表中的某一个字段的语法格式为:
SELECT < 列名 >FROM< 表名 >;
例 3
查询 tb_students_info 表中 name 列所有学生的姓名,SQL 语句和运行结果如下所示。
mysql>SELECT name FROM tb_students_info; +--------+| name |+--------+| Dany || Green || Henry || Jane || Jim || John || Lily || Susan || Thomas || Tom |+--------+10 rows inset (0.00 sec)
输出结果显示了 tb_students_info 表中 name 字段下的所有数据。
使用 SELECT 声明可以获取多个字段下的数据,只需要在关键字 SELECT 后面指定要查找的字段名称,不同字段名称之间用逗号“,”分隔开,最后一个字段后面不需要加逗号,语法格式如下:
SELECT <字段名1>,<字段名2>,…,<字段名n>FROM<表名>;
例 4
从 tb_students_info 表中获取 id、name 和 height 三列,SQL 语句和运行结果如下所示。
mysql>SELECT id,name,height ->FROM tb_students_info; +----+--------+--------+| id | name | height |+----+--------+--------+|1| Dany |160||2| Green |158||3| Henry |185||4| Jane |162||5| Jim |175||6| John |172||7| Lily |165||8| Susan |170||9| Thomas |178||10| Tom |165|+----+--------+--------+10 rows inset (0.00 sec)
输出结果显示了 tb_students_info 表中 id、name 和 height 三个字段下的所有数据。
原文:https://www.cnblogs.com/no-celery/p/13533953.html
内容总结
以上是互联网集市为您收集整理的MySQL教程66-数据表查询语句全部内容,希望文章能够帮你解决MySQL教程66-数据表查询语句所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。