【MySql】检索数据SELECT语句

(1)启动数据库;

(2)通过“show database;”语句显示所有的数据库,使用“use 数据库名;”进入到索要操作的数据库,使用“show tables;”进入到索要操作的数据表,使用“show columns from 数据表名;”可以显示该表包含那些列;

(3)检索数据:select语句:

3.1、检索单个列:select 列名 from 表名;注意:sql语句不区分大小写

3.2、检索多个列:select 列名1,列名2,……from 表名;在选择多个列时,一定要在列名之间加上逗号,但最后一个列后面不能加逗号,否则将会出现错误;

3.3、检索所有列:select * from 表名;

3.4、检索不同的行:使用distinct关键字,此关键字指示MySQL只返回不同的值:select distinct 列名 from 表名;注意:不能部分使用distinct关键字,表名在检索多个列的时候,distinct关键字只能放在所有列的前面。

3.5、限制结果:因为select语句返回的是所有匹配的行,他们可能是指定表中的每个行。为了返回第一行或前几行,可使用LIMIT子句:

              select 列名 from 表名 limit n;表示MySQL返回不多于n行;

                       select 列名 from 表名 limit s, n;表示MySQL返回从s开始的不多于n行;

注意:检索出来的第一行为行0而不是行1,因此,LIMIT 1,1 将检索出第二行而不是第一行;

                       在行数不够时,limit指定要检索的行数为检索的最大行数,如果没有足够的行,MySQL将只返回它能返回的那么多行;

3.6、使用完全限定的表名:select 表名.列名 from 列名;表名也可以是完全限定的:select 表名.列名 from 数据库名.表名;

(4)排序检索数据

4.1、排序数据:在使用select 列名 from 表名;得到的数据是未排序的,没有特定的序列,只是按照添加到表中的时间顺序显示出来;

        子句(clause):使用ORDER BY:select 列名 from 表名 ORDER BY 列名;这条语句除了指示MySQL对列名以字母顺序排序数据;

4.2、按多个列排序:举个例子,下面检索3个列,并按其中两个列对结果进行排序-首先按照第一个排序,庵后按照第二个排序:

       select 列名1,列名2,列名3 from 表名 ORDER BY 列1,列2;对于这个例子,仅在多个行具有相同的列1值时才对列2进行排序,如果列1 的值都是唯一的,则不会对;列2进行排列;

4.3、指定排序方向:在排序的时候,数据排序默认的排序顺序,还可以使用降序顺序排列,但是必须指定 DEST关键字, select 列名1,列名2,列名3 from 表名 ORDER BY 列i DEST;

        如果打算用多个列排序,先按第一个列按照降序排列,然后再对列2进行排序;

        select 列名1,列名2,列名3 from 表名 ORDER BY 列i DEST, 列2;

注意:DEST关键字只应用到直接位于其前面的列名。

        在多个列上降序排序:如果想在多个列上进行降序排序,必须对每个列指定DEST关键字

        与DEST相反的关键字ASC,在升序排序时可以指定它。升序是默认的,所以不需要指定。

使用ORDER BY和LIMIT的组合,能够找出一个列中最高或最低的值,下面的例子演示如何找出最昂贵物品的值:

select prod_price from products order by prod_price DESC LIMIT 1;




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值