谓词

    对于通常的函数来说,返回值有可能是数字、字符串 或者 日期,但是谓词的 返回值全都是真值 (TRUE、FALSE、UNKNOWN),这也是 谓词 和 函数 的最大区别

    ‘ddd%’ 是代表 以 ddd 开头的所有字符串

    1. SELECT *<br /> FROM Sampletable <br /> WHERE strcol LIKE '%ddd%';<br /> *在字符串的起始和结束位置 加上 %,就能取出 包含 ddd 的字符串

    此外,可以使用下划线 _ 来代替 %,与%的不同之处在于,它代表了 ‘任意1个字符’

             SELECT *<br />             FROM Sampletable<br />             WHERE strcol LIKE 'abc__';<br />             * 选取出 strcol 列的值为  abc+任意2个字符   的记录
    

    使用 BETWEEN AND 可以进行范围查询

             SELECT product_name, sale_price<br />             FROM Product<br />             WHERE sale_price BETWEEN 100 AND 1000;<br />              *从product 中读取出 销售单价 sale_price 为100 元到1000元之间的商品
    

    BETWEEN AND 的特点是 结果中 会包含 100 和 1000 两个临界值

    如果不想让结果中包含临界值,那就必须使用 < 和 >

               SELECT product_name, sale_price<br />               FROM Product<br />               WHERE sale_price > 100<br />                      AND sale_price < 1000;
    

    选取出某些值 为 NULL 的列的数据,不能使用 = ,只能使用 特定谓词 IS NULL

                       SELECT product_name, purchase_price<br />                       FROM Product<br />                       WHERE purchase_price IS NULL;
    

    想要选取 NULL 以外的数据时,需要使用 IS NOT NULL

                        SELECT product_name, purchase_price<br />                        FROM Product<br />                        WHERE purchase_price  IS NOT NULL;
    

    IN 谓词 与 OR 的 简便用法

    SELECT product_name, purchase_price
    FROM Product
    WHERE purchase_price = 320
    OR purchase_price = 500
    OR purchase_price = 5000;

    可以使用 IN 谓词 来替代上述 SQL 语句

               SELECT product_name, purchase_price<br />               FROM Product<br />               WHERE purchase_price IN (320, 500, 5000);
    

    否定形式则用 NOT IN


    使用子查询作为 NOT IN 的参数

                                      SELECT product_name, sale_price<br />   FROM Product<br />   WHERE product_id  NOT IN ( SELECT product_id<br />                                                  FROM ShopProduct<br />                                                   WHERE shop_id = '000A');
    

    *选取出在东京店 (000A) 以外销售的商品 product_id 的 销售单价 sale_price