SQL之限定和排序(Restricting and Sorting)

从数据库取回数据的时候,需要限制所显示的数据行,或者将显示的结果行排序。

用查询限制行数(Limiting Rows Using a Selection)
    用where子句限制输出行(Restrict the rows returned by using the WHERE clause.)
    语法:

SELECT    *|{[DISTINCT] column|expression [alias],...}    FROM   table  [WHERE    condition(s)];

     限制选择的行

        用WHERE子句限制从查询返回的行。一个WHERE子句包含一个必须满足的条件,WHERE子句紧跟着FROM子句。如果条件是true,返回满足条件的行。
    在语法中:
         WHERE   限制查询满足条件的行
         condition  由列名、表达式、常数和比较操作组成
         WHERE子句能够比较列值、文字值、算术表达式或者函数,WHERE子句由三个元素组成:列名,比较条件,列名、常量或值列表;
    示例:

    SELECT * FROM `dept` where deptno =10;

    --字符串和日期,在WHERE子句中字符串和日期必须包含在单引号 (‘ ’) 中。但是,数字常数不应该包含在单引号中
    SELECT * FROM `dept` where loc ='new YORK';

 

比较条件(Comparison Conditions):
    Operator                                         Meaning
       =                                                   等于
       >                                                   大于
       >=                                              大于等于
       <                                                   小于
      <=                                               小于等于
      <>                                                 不等于
      BETWEEN...AND...                    在两个值之间
      IN(SET)                                   在一堆值里
      LIKE                                          找一个想象的值
      IS NULL                                     为一个NULL值
    示例:

    SELECT * FROM `dept` where deptno >=10;
    SELECT * FROM `dept` where deptno BETWEEN 10 AND 30;
    SELECT * FROM `dept` where deptno IN (10,30);
    SELECT * FROM `dept` where loc LIKE 'n%';
    SELECT * FROM `dept` where loc IS NULL;
 

逻辑条件(Logical Conditions):
    Operator                                              Meaning
       AND                                     两个条件都为真,返回"true"
       OR                                       其中一个条件为真,返回“true”
       NOT                                           条件为假,返回"false"
    示例:

    SELECT * FROM `dept` where deptno>=10 AND loc LIKE "%n%"
    SELECT * FROM `dept` where deptno>=10 OR loc LIKE "%n%"
    SELECT * FROM `dept` where deptno NOT IN(10,20)
    --优先原则(Rules of Precedence),从前往后:
    SELECT * FROM `dept` where deptno NOT IN(10,20) AND deptno>30

 

  排序(order by):
    默认的是升序(ascending order, default)
    示例:

    SELECT * FROM `dept` order by deptno
    --倒序
    SELECT * FROM `dept` order by deptno DESC
    --还可以根据多个条件进行排序
    SELECT * FROM `dept` order by deptno,dname DESC
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值