数据库-mysql(三)

来源:互联网 发布:java 运行环境下载32 编辑:程序博客网 时间:2024/06/05 08:52

检索数据

   select * from table (表跟其他数据库语法一般一样);


SQL语句不区分大小写多条SQL语句必须以分号(;)分隔一定要认识到虽然SQL是不区分大小写的,但有些标识符(如数据库名、表名、列名)可能不同在处理SQL语时,其中所有空格都被忽略

 分页

     select  name from students limit 5;(查询student表里的name列的前5行)

     select  name from students limit 5,5;(查询student表里的name列的第五行到第10行)第一个数为开始位置,第二个数为要检索的行数

select name from students limit 3 offset 4(从4开始取3行)

     所以,带一个值的 LIMIT 总是从第一行开始,给出的数为返回的行数。
带两个值的 LIMIT 可以指定从行号为第一个值的位置开始。

      检索出来的第一行为行0而不是行1。因此, LIMIT 1, 1
将检索出第二行而不是第一行。
在行数不够时 LIMIT 中指定要检索的行数为检索的最大行

表名也可以是完全限定的

      eg: 

           select  name from aa.student(aa数据库名.表名) 

注意:不能部分使用 DISTINCT ,DISTINCT 关键字应用于所有列而
不仅是单个紧跟它的列,如果给出 SELECT DISTINCT vend_id,
prod_price ,除非指定的两个列查出的每一行值都不同,

否则所有行都将被检索出来;

排序:

   其实,检索出的数据并不是以纯粹的随机顺序显示的。如果不排
序,数据一般将以它在底层表中出现的顺序显示。这可以是数据最初
添加到表中的顺序。但是,如果数据后来进行过更新或删除,则此顺
序将会受到MySQL重用回收存储空间的影响。因此,如果不明确控
制的话,不能(也不应该)依赖该排序顺序

    eg: 

           select  name,pwd from aa order by name;

           select  name,pwd from aa order by name,pwd(先按name,再按pwd排序)

默认的排序都是升序,(A-Z),若用降序,必须加desc(asc);

使用 ORDER BY 和 LIMIT 的组合,能够找出一个列中最高或最低的值

   eg: 

           select  price from aa order by price desc  limit 1;

(价格由贵到便宜,只返回一行,最高价)




    



原创粉丝点击