zoukankan      html  css  js  c++  java
  • sql 必知必会学习笔记(二)

    三、过滤数据

    ①、select column1,column2 from table1 where column1=value;

         对于value值,有的用单引号,有的不用单引号;单引号用来限定字符串。

         用来与字符串类型的列进行比较的值用单引号,用来与数值列进行比较的值不需要用单引号。

         <>和!=通常可以互换使用,参照DBMS的文档,看它支持哪一

    ②、select column1,column2 from table1 where column1between A and B;

          在ms sql 中between匹配的范围包括A 和B.

    ③、select column1,column2 from table1 where column1 is null;

          检查null时专用。null不同于空格、空字符串,0.

    四、高级过滤

          组合where子句

    ①、 select column1,column2 from table1 where column1=value1 and column2 <>value2;

         and操作符: 检索满足所有条件的集合。

    ②、 select column1,column2 from table1 where column1=value1 or column2=value2;

        or操作符: 检索匹配任一个条件的集合。

         and的操作优先级和比or的优先级高,所以当where子句中同时有and和or时,建议使用小括号给括起来。

     ③、select column1,column2 from table1 where column1 in (value1,value2);

    in取括号中的合法值,合法值之间用逗号分隔,整个合法值都放在小括号之间。字符串用单引号引起来。

    in操作符和not操作法完成相同的功能。

    in的优点:

     ♢ 在使用长的选项清单时,用in 更清楚、直观。

    ♢in操作符一般比or操作符速度快。

    ♢in的最大优点是可以包括其他select语句,能更动态的建立where子句。

    ④、select column1,column2 from table1 where column1 not in (value1,value2);

    not总与其他操作符一起使用,用来否定其后的条件。

    五、用通配符进行过滤

    在搜索子句中使用通配符过滤,必须使用like,like之时DBMS,后跟的搜索模式利用通配符匹配而不是直接相等匹配进行匹配;

    ①、select column1,column2 from table1 where column1 like '%f%y%';

         通配符%可以位于搜索模式的任意位置,它匹配任意字符出现任意次数,可以是零个,一个,多个。

         当数据库某个字段是固定长度,而存储的数据达不到固定长度时,会在该数据的后边自动填写上空格。

         比如char(10)类型的字段,存储了‘abc’,在数据库中实际存储为abc三个字母后边会有七个空格,在使用通配符时,

         要记住使用%在字符的最后'abc%'进行匹配

    ②、select column1,column2 from table1 where column1 like '_bet';

         通配符_匹配单个字符。 

    ③、select column1,column2 from table1 where column1 like '[JM]%'

         方括号[],用来指定一个字符集,它必须匹配指定位置(通配符所在的位置)的一个字符。

         例子中匹配以J或者M开头,后边跟着任意字符的 column1 列。

         注:只有ms access、ms sql 、 Sybase Adaptive Server支持,是否支持请查阅DBMS帮助文档。

        通配符[]可以使用前缀字符^(脱字号)来否定。[^ab],不是a或者b.

    通配符的搜索效率比较低,所以:

    ♢、不要过分使用通配符。如果其他字符能达到目的,应该使用其他操作符。

    ♢、确实需要使用通配符时,尽可能不要将 通配符放到搜索模式的开始处,放在开始搜索是最慢的。

    ♢、仔细注意通配符的位置,放错就会得不到想要的结果。

  • 相关阅读:
    字体最小值
    javascript常用事件
    豆瓣移动端风格的css命名方法与学习
    JS基础函数
    css3动画
    html与css的移动端与pc端需要注意的事项
    javascript什么是函数
    JavaScript基础学习
    开始学javascript基础
    使用css3属性,大部分浏览器要识别前缀
  • 原文地址:https://www.cnblogs.com/zhouxiuquan/p/2299483.html
Copyright © 2011-2022 走看看