首页 > 数据库 > MySQL > 正文

mysql 不等于 符号写法

2024-07-24 12:48:05
字体:
来源:转载
供稿:网友

经过测试发现mysql中用<>与!=都是可以的,但sqlserver中不识别!=,所以建议用<>

selece * from jb51 where id<>45

sql 里 符号<> 于 != 的区别

<> 与!=都是不等于的意思,但是一般都是用<>来代码不等于因为<>在任何SQL中都起作用但是!=在sql2000中用到,则是语法错误,不兼容的

sql中的等于和不等于, '=' ,'!=','<>','is null'....
不等于:<> ,!=,~= ,^= 这四个符号据说都可以在oracle中表示不等于,但是试了之后发现<> ,!= ,^=是可以的,~=不行,需要注意的是,只有<>是标准的sql语法,可以移植,其他的都是oracle平台的特性,移植性较差,所以开发中,尽量使用<>表示不等于

等于:=不用多说,但是要进行null的等于判断时,须使用is null 或is not null,null只能通过is null或者is not null来判断,其它操作符与null操作都是false。

例子,select * from bl_ip_dt where amount <> 800,这条语句查不出amount等于null 的记录,

select * from bl_ip_dt where amount <> 800 or amount is null 才是可以的MySql的简单查询不等于NULL

查询表中aa是null的数据:

select * from table where aa is null;

查询表中aa不等于1的数据:

select * from table where aa <> 1;

NULL值操作:

NULL值可能令人感到奇怪直到你习惯它。概念上,NULL意味着“没有值”或“未知值”,且它被看作与众不同的值。为了测试NULL,你不能使用算术比较 操作符例如=、<或!=。为了说明它,试试下列查询:

mysql> SELECT 1 = NULL, 1 <> NULL, 1 < NULL, 1 > NULL;
+----------+-----------+----------+----------+
| 1 = NULL | 1 <> NULL | 1 < NULL | 1 > NULL |
+----------+-----------+----------+----------+
|     NULL |      NULL |     NULL |     NULL |
+----------+-----------+----------+----------+
很显然你不能通过这些比较得到有意义的结果。相反使用IS NULL和IS NOT NULL操作符:

mysql> SELECT 1 IS NULL, 1 IS NOT NULL;
+-----------+---------------+
| 1 IS NULL | 1 IS NOT NULL |
+-----------+---------------+
|         0 |             1 |
+-----------+---------------+
请注意在MySQL中,0或 NULL意味着假而其它值意味着真。布尔运算的默认真值是1。

自我感觉is null或者IFNULL(SUM(),XXX)在开发中经常用到。

另外在php中 <> 和 != 都是可以用的

$a == $b 等于 TRUE,如果 $a 等于 $b。
$a === $b 全等 TRUE,如果 $a 等于 $b,并且它们的类型也相同。(PHP 4 引进)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表