zoukankan      html  css  js  c++  java
  • MySQL ------ 查询检索(limit,完全限定) (四)

    查询数据 SELECT

    1、检索单列     

     select prod_name from products;

    注意:

    1、 返回数据没有排序

    2、多条SQL 语句必须使用分号(;) 分隔

    3、在处理SQL 语句时,其中所有空格都被忽略

    4、SQL 可以一行也可以多行,建议将SQL语句分为多行,这样更易阅读和调试。

    5、SQL语句不区分大小写,但是建议SQL 关键字使用大写,所有列和表名使用小写,这样便于阅读调试,还有的就是MySQL4.1 及之前的版本中,标识符(如数据库名称,表名,列名),默认是区分大小写的,4.1 之后默认是不区分大小写的。

    2、检索多列

    在检索多列的时候,一定要在列名之间加上逗号,但是最后一个列名不要添加逗号,不然报错

    select prod_id,prod_name,prod_price from products;

    数据的表示:  SQL 语句一般返回原始的、无格式的数据,实际中一般是使用SQL查出原始的数据,然后使用程序进行提供格式(如给钱加个¥)

    3、检索所有列

    1、是将所有的字段全部列出进行查询

    2、是使用通配符(*),表示所有的列

    select * from products;

     建议: (*) 能不用最好不用,因为会降低检索和应用程序的性能。当然在你对这表不熟悉,这个时候* 就很重要会把表中所有的列检出来,然后再不断优化

    4、检索不同的行

    如:在你进行单列查询的时候,会把单列的所有的行都返回出来,这个时候可能会有一些行是重复的,也不方便了解, 就想上述的 vend_id  (供应商编号)这一列中的数据好多行是重复的,不变查看,我就想知道这批商品主要有哪些供应商,怎么搞

    这个时候  DISTINCT (distinct)关键字孕育而出,意味只返回不同的值

     select distinct vend_id from products;

     注意:

      distinct 关键字应用于所有列而不仅是前置他的列,建议只在单列查询的时候使用

    如下面:两个都用报错,只用一个没用

    5、限制结果

     select  语句返回所有的匹配的行,但是你要是不需要那么多,需要返回特定的行要怎么办来

    这个时候 LIMIT 关键字就出来了,你要是了解的较多可能会听过 TOP 关键字返回前几行,不过这个SQLServer 支持,MySQL不支持

    从简到难

    --  返回前五行
    select prod_name from products limit 5;

    -- 从第5行开始,检索5行  limit 5,5  第一个数表示开始位置,第二个数表示检索行数
    select prod_name from products limit 5,5;

     注意:

    1、从0 开始算数,检索出来的第一行为0而不是1(理工科就要无中生有,从零开始)

    2、当需要检索的行数大于拥有的时,只返回符合的

    3、mysql 5 后支持 limit 4 offset 2,与limit 2,4 一个意思,表示从行2开始取4行 

    6、完全限定

    就是通过名字来引用列,通过库引用表

    -- 查询bookstu 数据库中的products,products 表的prod_name 字段的所有行
    
     select products.prod_name from bookstu.products;

  • 相关阅读:
    java
    java
    java
    js
    java
    异常之异常处理
    面向对象之元类
    面向对象之内置方法
    面向对象之反射
    面向对象之类方法与静态方法
  • 原文地址:https://www.cnblogs.com/obge/p/12926543.html
Copyright © 2011-2022 走看看