MySQL 查询数据表

MySQL 表单查询是指从一张表的数据中查询所需的数据,主要有查询所有字段、查询指定字段、查询指定记录、查询空值、多条件的查询、对查询结果进行排序等。

基本语法

MySQL 从数据表中查询数据的基本语句为 SELECT 语句,基本格式如下:

SELECT
{* | <字段列名>}
[
FROM <1>, <2>[WHERE <表达式>
[GROUP BY <group by definition>
[HAVING <expression> [{<operator> <expression>}]]
[ORDER BY <order by definition>]
[LIMIT[<offset>,] <row count>]
]

其中,各条子句的含义如下:

	{*|<字段列名>}包含星号通配符的字段列表,表示查询的字段,其中字段列至少包含一个字段名称,如果要查询多个字段,多个字段之间要用逗号隔开,最后一个字段后不要加逗号。FROM <表 1>,<表 2>…,表 1 和表 2 表示查询数据的来源,可以是单个或多个。WHERE 子句是可选项,如果选择该项,将限定查询行必须满足的查询条件。GROUP BY< 字段 >,该子句告诉 MySQL 如何显示查询出来的数据,并按照指定的字段分组。[ORDER BY< 字段 >],该子句告诉 MySQL 按什么样的顺序显示查询出来的数据,可以进行的排序有升序(ASC)和降序(DESC)。[LIMIT[<offset>,]<row count>],该子句告诉 MySQL 每次显示查询出来的数据条数。

使用“*”查询表中的全部内容

在 SELECT 语句中使用星号“*”通配符查询所有字段。

SELECT 查询记录最简单的形式是从一个表中检索所有记录,实现的方法是使用星号“*”通配符指定查找所有列的名称,语法格式如下:

SELECT * FROM 表名;

从 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 | Red    |       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 in set (0.26 sec)

由执行结果可知,使用星号“*”通配符时,将返回所有列,数据列按照创建表时的顺序显示。

注意:一般情况下,除非需要使用表中所有的字段数据,否则最好不要使用通配符“*”。使用通配符虽然可以节省输入查询语句的时间,但是获取不需要的列数据通常会降低查询和所使用的应用程序的效率。

通配符的优势是,当不知道所需列的名称时,可以通过通配符获取它们。

查询 tb_students_info 表中的所有数据,输入的 SQL 语句和执行结果如下所示。

mysql> SELECT id,name,dept_id,age,sex,height,login_date-> FROM tb_students_info;
+----+--------+---------+------+------+--------+------------+
| id | name   | dept_id | age  | sex  | height | login_date |
+----+--------+---------+------+------+--------+------------+
|  1 | Red    |       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 in set (0.00 sec)

注意:使用“*”可以返回所有列的数值,但若不需要返回所有列的值,为了提高效率,一般采用 SELECT 字段名列表的形式。

查询表中指定的字段

查询表中的某一个字段的语法格式为:

SELECT < 列名 > FROM < 表名 >;

查询 tb_students_info 表中 name 列所有学生的姓名,输入的 SQL 语句和执行结果如下所示。

mysql> SELECT name FROM tb_students_info;
+--------+
| name   |
+--------+
| Red    |
| Green  |
| Henry  |
| Jane   |
| Jim    |
| John   |
| Lily   |
| Susan  |
| Thomas |
| Tom    |
+--------+
10 rows in set (0.00 sec)

输出结果显示了 tb_students_info 表中 name 字段下的所有数据。

使用 SELECT 声明可以获取多个字段下的数据,只需要在关键字 SELECT 后面指定要查找的字段名称,不同字段名称之间用逗号“,”分隔开,最后一个字段后面不需要加逗号,语法格式如下:

SELECT <字段名1>,<字段名2>,,<字段名n> FROM <表名>;

从 tb_students_info 表中获取 id、name 和 height 三列,输入的 SQL 语句和执行结果如下所示。

mysql> SELECT id,name,height-> FROM tb_students_info;
+----+--------+--------+
| id | name   | height |
+----+--------+--------+
|  1 | Red    |    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 in set (0.00 sec)

输出结果显示了 tb_students_info 表中 id、name 和 height 三个字段下的所有数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/564324.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

内网通看不到其他人_小学生在新版本里用“吃鸡内挂”,巡查员:封不了,手机自带的...

欢迎诸位小伙伴们来到本期天哥开讲的《和平精英》“精英那点事儿”~接下来呢&#xff0c;咱们聊聊玩家用“吃鸡内挂”打沙漠地图、出生岛的ID为何会消失不见以及未更新的新枪提前出现等有趣的玩家游戏经历与发现~得&#xff0c;废话不多说了&#xff0c;还是各位小伙伴们熟悉的…

采用我国国产处理器的超级计算机是,“中国芯”超级电脑合肥诞生 首次采用国产CPU芯片...

首次采用国产CPU芯片&#xff0c;每秒计算一万亿次的“超级”计算机昨天在合肥通过专家鉴定。记者了解到&#xff0c;这台基于龙芯2号的国产万亿次高性能计算机系统KD-50-I&#xff0c;由中国科学技术大学研制成功&#xff0c;使用300多颗64位龙芯2F处理器&#xff0c;峰值性能…

MySQL 过滤重复数据

MySQL SELECT 语句查询数据的时候返回的是所有匹配的行。 查询 tb_students_info 表中所有 age 的执行结果如下所示。 mysql> SELECT age FROM tb_students_info; ------ | age | ------ | 25 | | 23 | | 23 | | 22 | | 24 | | 21 | | 22 | | 23 | | 2…

7个和尚_经典故事:8个和尚与1串佛珠的故事

比说清楚更重要的是&#xff1a;能承担&#xff0c;能行动&#xff0c;能化解&#xff0c;能扭转&#xff0c;能改变。能想自己&#xff0c;更能想别人。这不仅是一种境界&#xff0c;更是一种智慧。 8个和尚与1串佛珠的故事 不是所有的事情&#xff0c;你都需要说清楚。 有个寺…

计算机一级字幕设置,如何开启电脑哔哩哔哩中的CC字幕功能

如何开启电脑哔哩哔哩中的CC字幕功能腾讯视频/爱奇艺/优酷/外卖 充值4折起当我们在使用电脑的时候&#xff0c;可以通过哔哩哔哩来观看视频&#xff0c;那么如何将视频的字幕设置为CC字幕呢&#xff1f;接下来就由小编来告诉大家。具体如下&#xff1a;1. 第一步&#xff0c;打…

MySQL 设置别名

使用 MySQL 查询时&#xff0c;当表名很长或者执行一些特殊查询的时候&#xff0c;为了方便操作或者需要多次使用相同的表时&#xff0c;可以为表指定别名&#xff0c;用这个别名代替表原来的名称。 为表取别名的基本语法格式为&#xff1a; <表名> [AS] <别名>其…

问的书写规则是什么意思_书写规则是什么意思

满意答案sky7012018.03.15采纳率&#xff1a;58% 等级&#xff1a;6已帮助&#xff1a;8人汉字书写笔顺规则一、一般规则&#xff1a;1、先撇后捺 &#xff1a; 人 八 入2、先横后竖 &#xff1a; 十 王 干3、从上到下&#xff1a; 三 竟 音4、从左到右&#xff1a; 理 利 礼…

计算机大赛横幅标语有趣的,有趣的横幅标语

作为一个先如今社会的特色产品,横幅从来就是不一般的&#xff01;从最初的宣传计划生育,到现在各种广告、表示、警示等,横幅的作用也越来越广&#xff01;从最开始的强上到之后的市内、户外,横幅的摆放方式也是层出不穷&#xff01;悬挂的,粘贴的,只要能看到的地方,必然会有横幅…

MySQL 限制查询结果的记录数

使用 MySQL SELECT 语句时往往返回的是所有匹配的行&#xff0c;有些时候我们仅需要返回第一行或者前几行&#xff0c;这时候就需要用到 MySQL LIMT 子句。 基本的语法格式如下&#xff1a; <LIMIT> [<位置偏移量>,] <行数>LIMIT 接受一个或两个数字参数。…

telephone 为空 唯一索引_记一次线上唯一索引失效没有起效的场景

背景描述&#xff1a;我们系统A做远程在线接口提供给B系统调用&#xff0c;每次的请求参数中都带有幂等单号用来做幂等校验&#xff0c;幂等单号对应的字段是不可空且唯一的。由于对应的业务表线上已有数据&#xff0c;这个幂等字段数据新加的字段&#xff0c;所以要做初始化数…

计算机环境安全服务未启动,windows10系统卡在“准备安全选项”如何解决

最近有windows10系统用户到本站反映说遇到这样一个问题&#xff0c;就是计算机突然卡在“准备安全选项”屏幕上了&#xff0c;导致无法进行任何操作&#xff0c;该怎么办呢&#xff0c;下面小编就给大家讲解一下windows10系统卡在“准备安全选项”的具体解决方法。现在&#xf…

MySQL 对查询结果进行排序

MySQL SELECT 语句&#xff0c;ORDER BY 子句主要用来将结果集中的数据按照一定的顺序进行排序。 其语法格式为&#xff1a; ORDER BY {<列名> | <表达式> | <位置>} [ASC|DESC]语法说明如下。 1 列名 指定用于排序的列。可以指定多个列&#xff0c;列名之…

matlab实现双边滤波_【他山之石】pytorch 实现双边滤波

“他山之石&#xff0c;可以攻玉”&#xff0c;站在巨人的肩膀才能看得更高&#xff0c;走得更远。在科研的道路上&#xff0c;更需借助东风才能更快前行。为此&#xff0c;我们特别搜集整理了一些实用的代码链接&#xff0c;数据集&#xff0c;软件&#xff0c;编程技巧等&…

新网 云服务器,云服务器的使用教程

现在购买云服务器的人越来越多&#xff0c;大家只需要在众多的云服务器品牌中找到适合自己的云服务器。并不是价格越贵就越适合自己&#xff0c;而且初学者购买贵的云服务器并不划算&#xff0c;接下来就由小编为大家介绍关于云服务器的使用教程&#xff0c;希望能给大家带来帮…

MySQL 条件查询

MySQL SELECT&#xff0c;可以使用 WHERE 子句来指定查询条件&#xff0c;从 FROM 子句的中间结果中选取适当的数据行&#xff0c;达到数据过滤的效果。 语法格式如下&#xff1a; WHERE <查询条件> {<判定运算1>&#xff0c;<判定运算2>&#xff0c;…}其…

开红数显示服务器为空,网维大师常见问题:图标空白或红号问号

【问题现象】客户机打开游戏菜单后出现图标异常&#xff0c;只能看到游戏文字看不到图标或图标&#xff1f;号&#xff0c;分别如下图两种情况或【原因说明】出现这种问题一般是由于网维大师服务端的游戏图标缓存文件损坏导致。而导致图标缓存损坏的原因一般是由于&#xff1a;…

shell脚本给mysql创建表_shell脚本:实现MySQL创建数据库和删除数据库的脚本

OS操作系统&#xff1a;CentOS release 6.8 (Final)[rootsky9896chapter11]# vi createdatabase.sh #批量创建数据库#!/bin/shPATH"/var/lib/mysql/bin:$PATH"MYUSERrootMYPASS*******MYCMD"mysql -u$MYUSER -p$MYPASS "for dbname in test skyboy skygirl…

MySQL 常用运算符

MySQL 数据库中的表结构确立后&#xff0c;表中的数据代表的意义就已经确定。而通过 MySQL 运算符进行运算&#xff0c;就可以获取到表结构以外的另一种数据。 例如&#xff0c;学生表中存在一个 birth 字段&#xff0c;这个字段表示学生的出生年份。而运用 MySQL 的算术运算符…

mysql连接不上远程数据库_Mysql 连接不上远程数据库,求助

如题&#xff0c;放假在家玩树莓派集群&#xff0c;其中一台连不上数据库&#xff0c;今日怪事1状态描述&#xff1a;平台树莓派 4B&#xff0c;架构 armv7&#xff0c;系统 raspbian 最新( debian10 )数据库版本 mariadb-server version: 10.3.22安装 mariadb-server & cl…

dicom虚拟打印服务器,DICOM打印服务器软件

dicom打印服务器|dicom相机|PrintSCP|dicom胶片打印服务器|与多家PACS产品对接通过dicom胶片打印服务器(PrintSCP)&#xff0c;接收放射设备(CT、ECT、CR、DR、MRI、DSA等)或PACS工作站的“胶片打印”指令&#xff0c;将胶片打印到Windows打印机&#xff0c;从而替代常规的激光…