Heim >Datenbank >MySQL-Tutorial >MySql小点心―2、常用的比较函数和比较操作符_MySQL

MySql小点心―2、常用的比较函数和比较操作符_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-01 13:41:141016Durchsuche

bitsCN.com
1、比较操作符:=  、 >、  =、 、 != 、  这里面就是知道下 和 != 意义是一样的都是不等于的意思,看个人的喜好  是用于当比较的两边的值存在是空(NULL)的情况,这种情况有的时候会遇到,mysql提供这种方式的比较符,类似于"=",不同的是当两边要比较的数都为NULL的话它返回true(表示两边相等),如果其中有一边是NULL的话它返回为false(表示两边不相等)。如果是使用"="比较操作符,当两边任何一边有NULL的时候返回都是NULL。 2、比较函数: BETWEEN...AND :检测某个数是不是在某个范围内。 expr BETWEEN min AND max。对应的还有个NOT BETWEEN...AND,表示不再某个范围 IN() :检测某个数是不是在某些数里面。 expr IN (value,...)。对应的是NOT IN(),表示不在列出的数里面    INTERVAL(N,N1,N2,N3,...):返回N1、N2、.....中第一个比N大的索引,N1、N2...需要按大小排序号比如INTERVA(10,1,10,100,1000)这个函数返回2,100的索引为2 GREATEST():返回一组数的最大值 。对应的是LEAST():返回一组数的最小值。 IS :同布尔值判断,IS boolean_value ,这里需要注意的是boolean_value有三种 TRUE、 FALSE、 UNKNOWN,UNKNOWN对应于值为空的情况,比如NULL IS UNKNOWN则返回TRUE。同IS相反的是IS NOT,用法类似。 IS NULL:判断一个值是不是为空。在使用ODBC编程是这个IS NULL除了判断是否为空以为还有两个用途:    1、如果 sql_auto_is_null 这个Mysql系统变量设置为1(默认为1),当插入一个AUTO_INCREMENT自动生成的值(自增长的值,系统自动会生成)之后,可以通过下面一条语句来得到之前插入的记录: [sql] SELECT * FROM tbl_name WHERE auto_col IS NULL  这里tbl_name是表名称,auto_col对应于自增长的列名。得到的记录中那个自增长列所对应的值同我们调用LAST_INSERT_ID()得到的值是相同的。当然如果插入失败则上面的SELECT没有记录返回,当然如果sql_auto_is_null被设置为0 false则也不行。   2、对应DATE或者DATETIME的数据格式对应的字段,并且字段设置为非空NOT NULL,可以通过IS NULL来查找“0000-00-00”这个特殊的日期,下面是代码: [sql] SELECT * FROM tbl_name WHERE date_column IS NULL  这个主要考虑到ODBC里面不支持“0000-00-00”的一个日期值。同IS NULL对应的是IS NOT NULL,使用类似。 STRCMP:比较两个字符,返回为-1、0、1这三种值。   LIKE:简单的模式匹配,这个是常被用到的功能。通常我们知道"%"代表任意多个字符,另外"_"代表一个字符。先看看LIKE的格式: [sql] expr LIKE pat [ESCAPE 'escape_char']  这里后面的ESCAPE是指定转义符号。默认的ESCAPE(转义)符号是"/",如果需要使用“%”和“_”,默认情况下可以用"/%"和"/_"来表示;如果需要查找"/n",则需要搜索"//n",如果需要查找"/",则需要搜索"////",因为这里有两次的解析,一次是parser(文本黏贴器)生成的(就是如果expr里面有‘/’符号则黏贴器会把它转变为'//'),一次是匹配的时候的(匹配的时候‘////’就变为'//'了)。pat可以是字符串、字符串表达式,或者列名称。 LIKE也可以用在数字的表达式中,比如  10 LIKE '1%' 这个也是返回true 另外要注意的是如果expr 或者 pat 中有一个是NULL那么 LIKE将会返回 NULL NOT LIKE 同 LIKE 类似 bitsCN.com

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn