美文网首页
Mysql第四章 - 检索数据SELECT

Mysql第四章 - 检索数据SELECT

作者: 足__迹 | 来源:发表于2024-03-11 15:15 被阅读0次

    SELECT语句

    检索单个列

    输入

    SELECT mo.main_order_no FROM main_order mo

    输出


    查询结果.png

    SQL语句不区分大小写,因此SELECT与select是相同的。同样,写成Select也没有关系。许多SQL开发人员喜欢对所有SQL关键字使用大写,而对所有列和表名使用小写,这样做使代码更易于阅读和调试。

    检索多个列

    输入

    SELECT mo.main_order_no,mo.order_status,mo.payment_status FROM main_order mo

    输出


    多列数据.png

    SQL语句一般返回原始的、无格式的数据。数据的格式化是一个表示问题,而不是一个检索问题。因此,表示(对齐和显示上面的价格值,用货币符号和逗号表示其金额)一般在显示该数据的应用程序中规定。一般很少使用实际检索出的原始数据(没有应用程序提供的格式)。

    检索所有列

    SELECT语句还可以检索所有的列而不必逐个列出它们。这可以通过在实际列名的位置使用星号(*)通配符来达到
    输入

    select * FROM main_order

    输出:


    所有列数据.png

    注释:

    1,如果给定一个通配符(),则返回表中所有列。列的顺序一般是列在表定义中出现的顺序。但有时候并不是这样的,表的模式的变化(如添加或删除列)可能会导致顺序的变化。
    2,一般,除非你确实需要表中的每个列,否则最好别使用
    通配符。虽然使用通配符可能会使你自己省事,不用明确列出所需列,但检索不需要的列通常会降低检索和应用程序的性能。

    检索不同的行(去重)-DISTINCT

    举例;查询患者库中的患者名称,当前会查出所有的测试 张大仙
    输入:select person_name FROM person
    输出:


    例1.png

    举例;只查询表中,只想得出患者名称为【测试】的商品名称 推荐关键词DISTINCT

    输入:SELECT DISTINCT person_name FROM person
    输出:


    image.png

    注释

    1, SELECT DISTINCT person_name 告诉MySQL只返回不同(唯一)的行,如果使用DISTINCT关键字,它必须直接放在列名的前面。
    2,不能部分使用DISTINCT DISTINCT关键字应用于所有列而不仅是前置它的列。如果给出SELECT DISTINCT 字段1 ,字段2,除非指定的两个列都不同,否则所有行都将被检索出来。

    限制结果 -LIMIT

    SELECT语句返回所有匹配的行,它们可能是指定表中的每个行。为了返回第一行或前几行,可使用LIMIT子句

    • 限制输入行数
      输入:SELECT person_name FROM person LiMit 5
      注释:此语句使用SELECT语句检索单个列。LIMIT 5指示MySQL返回不多于5行
      输出:


      image.png
    • 限制开始行和结束行
      输入:SELECT DISTINCT person_name FROM person LiMit 2,5;
      注释:LIMIT 2, 5指示MySQL返回从行2开始的5行。第一个数为开始
      位置,第二个数为要检索的行数.默认一个值从第一行开始

    特别注意

    1,行0 检索出来的第一行为行0而不是行1。因此,LIMIT 1, 1将检索出第二行而不是第一行
    2,在行数不够时 LIMIT中指定要检索的行数为检索的最大行数。如果没有足够的行(例如,给出LIMIT 10, 5,但只有13行),MySQL将只返回它能返回的那么多行。

    相关文章

      网友评论

          本文标题:Mysql第四章 - 检索数据SELECT

          本文链接:https://www.haomeiwen.com/subject/kixhpdtx.html