MySQL快速回顾:简单查询操作[通俗易懂]

MySQL快速回顾:简单查询操作[通俗易懂]利用空闲时间花几分钟回顾一下 7.1 检索数据 为了查询出数据库表中的行(数据),使用SELECE语句。 格式: 第一种写法使用 通配符,会把表中行的列全部查询出来,而不必取一一列出全部列。但是不推

MySQL快速回顾:简单查询操作

利用空闲时间花几分钟回顾一下

7.1 检索数据

为了查询出数据库表中的行(数据),使用SELECE语句。

格式:

# 第一种
SELECT * FROM <table_name>;
# 第二种
SELECT field1,field2,... FROM <table_name>;

代码100分

  • 第一种写法使用*通配符,会把表中行的列全部查询出来,而不必取一一列出全部列。但是不推荐使用,这跟INSERT语句的规范写法一样。使用*通配符,列的顺序一般是列在表定义中出现的顺序,但有时候并不是这样的,表的模式的变化(如添加或删除列)可能会导致顺序的变化。特别是像使用INSERT SELECT这样的语句,可能会报错,甚至可能会不会报错但是数据插入错误的列。
  • 推荐使用第二种,第二种查询方式可以查询表中行的全部列,也可以查询表中行的单列或多列。
  • 使用通配符注意事项:虽然使用通配符可能会省事,不用明确列出所需列,但检索不需要的列通常会降低检索和应用程序的性能。

例如:

  • 单列查询:
代码100分SELECT stu_name FROM student;
  • 多列查询:
SELECT stu_name, stu_sex FROM student;
  • 查询全部列:
代码100分SELECT * FROM student;
# 或(推荐)
SELECT stu_id, stu_name, stu_sex FROM student;

7.2 检索不同的行

因为在表中有时候需要进行去重操作,可以使用DISTINCT关键字,让SELECT查询的结果返回不同的值。

格式:

SELECT DISTINCT field1,field2,... FROM <stable_name>;

DISTINCT关键字的注意:

  • 如果是单列,那么使用该关键字会将该列作为判断去重的条件。
  • 如果是多列,那么会将该多列作为判断去重的条件。
  • 使用这些单列或多列作为去重条件,如果在表中都是不相同的,那么就会将所有行都查出来。

7.3 限制结果

SELECT语句返回所有匹配的行。如果为了返回第一行或前几行,那么可以使用LIMIT子句。

格式:

# 第一种(n为整数)
SELECT field1,field2,... FROM <stable_name> LIMIT n;
# 第二种 (n,m为整数, n>=0, m>=1)
SELECT field1,field2,... FROM <stable_name> LIMIT n,m;

解释:

  • 第一种写法,对于查询出的数据(行)只返回不多于n行。
  • 第二种写法,LIMIT后的n表示查询的开始的位置,m表示要检索的行数。即,从第n行开始查询m行。
  • LIMIT后n是从0开始的,所以检索出来的第一行为行0而不是行1。因此,LIMIT 1,1 是将检索出第二行而不是第一行。
  • 如果LIMIT指定要检索的行数超过表中的行数,那么MySQL将返回它能返回的那么多行。

因为有人会把LIMIT n,m的语法搞混,比如LIMIT 3,4 是从行4开始的3行还是从行3开始的4行?如上面所述,它的意思是从行3开始的4行。
所以,MySQL 5支持LIMIT的另一种代替语法:LIMIT 4 OFFSET 3,意思是从行3开始取4行。

7.4 使用完全限定的表名

到目前为止SQL例子只通过列名引用列。也可能会使用完全限定的名称来引用列(同时使用表明和列名),如下:

SELECT <stable_name>.field1,<stable_name>.field2,...
    FROM <stable_name>;

在单表时可能看不出什么差别,但是在多表查询时,并且是那种有相关联的表,因为有可能两张表会有相同的列名,所以需要使用完全限定的表名来区分。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/10207.html

(0)
上一篇 2023-01-23
下一篇 2023-01-23

相关推荐

  • Apache Flink介绍

    Apache Flink介绍Apache Flink介绍 俗话说知子莫若父,要想了解一门技术就要看官方的介绍。Flink官网对Flink的介绍是这样的: Apache Flink is a framework and distr

    2023-03-20
    148
  • 如何使用pip更新Python包

    如何使用pip更新Python包随着Python的快速发展,越来越多的Python包得到了广泛的应用。然而,由于开源社区的不断更新和修复,很多Python包需要经常更新以保证稳定性和安全性。更新Python包的最有效方法是使用pip命令,因为它能方便地升级和管理Python包。

    2024-07-11
    43
  • Python语法错误:无法对函数调用进行赋值操作

    Python语法错误:无法对函数调用进行赋值操作无法对函数调用进行赋值操作是一个Python语法错误。当我们试图将函数调用作为赋值的目标时,Python解释器会抛出这个错误。例如:

    2024-03-04
    91
  • 腾讯云计算和腾讯集团的关系_腾讯云数据中台

    腾讯云计算和腾讯集团的关系_腾讯云数据中台日前,腾讯云计算(北京)有限责任公司与北京国双科技有限公司签署了**《国产数据库产品战略合作协议》**,双方将在数据库技术方面展开深度合作,通过分布式交易型数据库的联合研发、产品服务体系建设、品牌和市

    2023-05-03
    145
  • 如何使用Anaconda删除虚拟环境

    如何使用Anaconda删除虚拟环境在开发过程中,我们通常需要使用虚拟环境来隔离不同的项目依赖,这样可以避免不同项目之间的依赖冲突。但当不再需要这些虚拟环境时,我们需要将其删除以释放空间。本文将介绍如何使用Anaconda删除虚拟环境。

    2024-05-15
    77
  • 原生php pdo几个处理「建议收藏」

    原生php pdo几个处理「建议收藏」闲来无事,便记录几个最近遇到的Pdo细节问题,平常都是用orm的。 长连接 在历史的Mysql驱动中,都是使用connect和pconnect来区分长短连接,到了pdo之后,改成了参数。 PDO::…

    2022-12-22
    131
  • [Oracle] oralce 11.2.0.4手动创建EM「建议收藏」

    [Oracle] oralce 11.2.0.4手动创建EM「建议收藏」这里使用的版本是RedHat7.0,Oracle 11.2.0.4 1.dbconsole启动失败 [oracle@redhat75 ~]$ emctl start dbconsole Enviro…

    2022-12-27
    155
  • 移动硬盘还是网盘存储文件保险?[亲测有效]

    移动硬盘还是网盘存储文件保险?[亲测有效]用移动硬盘还是网盘存储文件更保险?我的建议是:分类存储。电影等非重要资料放硬盘,工作等重要资料放在靠谱的网盘里,比如说,坚果云。 没完没了的收集各种资源,就算有一百个硬盘、一百个网盘都囤不完,所以题…

    2023-04-11
    173

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注