zoukankan      html  css  js  c++  java
  • MySQL基础(一):检索数据

    检索数据


    使用SELECT语句从表中检索一个或多个数据列。

    SELECT语句


    SQL语句是由简单的英语单词构成的。这些单词称为关键字,每个SQL语句都是由一个或多个关键字构成的。大概,最经常使用的SQL语句就是SELECT语句了。它的用途是从一个或多个表中检索信息。
    为了使用SELECT检索表数据,必须至少给出两条信息——想选择什么,以及从什么地方选择。

    检索单个列


    先从简单的SQL SELECT语句开始介绍,此语句如下所示:

    输入

    SELECT prod_name
    FROM products;

    输出

     

    分析

    上述语句利用SELECT语句从products表中检索一个名为prod_name的列。所需的列名在SELECT关键字之后给出,FROM关键字指出从其中检索数据的表名。

    检索多个列


    要想从一个表中检索多个列,使用相同的SELECT语句。唯一的不同是必须在SELECT关键字后给出多个列名,列名之间必须以逗号分隔。

    下面的SELECT语句从products表中选择3列:

    输入

    SELECT prod_id, prod_name, prod_price
    FROM products;

    输出

    分析

    与前一个例子一样,这条语句使用SELECT语句从表products中选择数据。在这个例子中,指定了3个列名,列名之间用逗号分隔。

    检索所有列


    除了指定所需的列外(如上所述,一个或多个列),SELECT语句还可 以检索所有的列而不必逐个列出它们。这可以通过在实际列名的位置使 用星号(*)通配符来达到,如下所示:

    输入

    SELECT *
    FROM products;

    输出

    分析

    如果给定一个通配符(*),则返回表中所有列。列的顺序一般是列在表定义中出现的顺序。但有时候并不是这样的,表的模式的变化(如添加或删除列)可能会导致顺序的变化。

    检索不同的行 


    使用DISTINCT关键字,顾名思义,此关键字指示MySQL只返回不同的值。

    输入

    SELECT DISTINCT vend_id
    FROM products;

    输出

    分析

    SELECT DISTINCT vend_id告诉MySQL只返回不同(唯一)的vend_id行,因此只返回4行,如下面的输出所示。如果使用DISTINCT关键字,它必须直接放在列名的前面。

    限制结果


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

    输入 

    SELECT prod_name
    FROM products
    LIMIT 5;

    输出

    分析

    此语句使用SELECT语句检索单个列。LIMIT 5指示MySQL返回 不多于5行。为得出下一个5行,可指定要检索的开始行和行数,如下所示:

    输入

    SELECT prod_name
    FROM products
    LIMIT 5,5;

    输出

    分析

    LIMIT 5, 5指示MySQL返回从行5开始的5行。第一个数为开始 位置,第二个数为要检索的行数。所以,带一个值的LIMIT总是从第一行开始,给出的数为返回的行数。 带两个值的LIMIT可以指定从行号为第一个值的位置开始。在行数不够时 LIMIT中指定要检索的行数为检索的最大行 数。如果没有足够的行(例如,给出LIMIT 10, 5,但只有13 行),MySQL将只返回它能返回的那么多行。

    MySQL 5的LIMIT语法 LIMIT 3, 4的含义是从行4开始的3 行还是从行3开始的4行?如前所述,它的意思是从行3开始的4 行,这容易把人搞糊涂。由于这个原因,MySQL 5支持LIMIT的另一种替代语法。LIMIT 4 OFFSET 3意为从行3开始取4行,就像LIMIT 3, 4一样。

    使用完全限定的表名


    迄今为止使用的SQL例子只通过列名引用列。也可能会使用完全限定的名字来引用列(同时使用表名和列字)。请看以下例子:

    输入

    SELECT products.prod_name
    FROM products;

    输出

     

    分析

    这条SQL语句在功能上等于本章最开始使用的那一条语句,但这里指定了一个完全限定的列名。 表名也可以是完全限定的。

  • 相关阅读:
    Python打包之pyinstaller
    Python关于Pyqt
    Python撰写mail
    后台管理左侧菜单
    全选反选以及取消
    模态对话框
    Spark2.3.1版本全分布模式的安装与部署
    Kafka消息格式及多版本支持
    2019-11-18-plot作图
    剑指Offer-知识迁移能力53-59
  • 原文地址:https://www.cnblogs.com/mxsf/p/12682867.html
Copyright © 2011-2022 走看看