MYSQL删除数据库记录为空

admin6年前IT技术1434

delete from  name where fy_cn is NULL || LENGTH(trim(fy_cn))=1

 

MySql判断是否为null或空字符串  

判断方法:

 if  ISNULL(aBegBalRule) || LENGTH(trim(aBegBalRule))<1 THEN

 

ELSE

END IF;

 

 

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。

对NULL的特殊处理即是在前面的章节中,为了决定哪个动物不再是活着的,使用death IS NOT NULL而不使用death != NULL的原因。

在GROUP BY中,两个NULL值视为相同。

执行ORDER BY时,如果运行 ORDER BY ... ASC,则NULL值出现在最前面,若运行ORDER BY ... DESC,则NULL值出现在最后面。

NULL操作的常见错误是不能在定义为NOT NULL的列内插入0或空字符串,但事实并非如此。在NULL表示"没有数值"的地方有数值。使用IS [NOT] NULL则可以很容易地进行测试,如下所示:

mysql> SELECT 0 IS NULL, 0 IS NOT NULL, '' IS NULL, '' IS NOT NULL;
+-----------+---------------+------------+----------------+
| 0 IS NULL | 0 IS NOT NULL | '' IS NULL | '' IS NOT NULL |
+-----------+---------------+------------+----------------+
|         0 |             1 |          0 |              1 |
+-----------+---------------+------------+----------------+

因此完全可以在定义为NOT NULL的列内插入0或空字符串,实际是NOT NULL。

相关文章

KindEditor设置网址绝对路径

 KindEditor 4.1.2版本,在上传图片的时候 设置为绝对路径被这个问题困扰了很久,最终搞定,竟然是如此之简单。   方法如下:   1、打...

MYSQL替换第一个匹配的值

UPDATE zq_newsSET zq_content = CONCAT(    REPLACE (      &nb...

php缓存技术

<?php for($i=0;$i<=5;$i++){echo $i."<br/>";ob_flush();//这里是刷新php缓冲区flush();//这...

Axure RP 8设置动态面板状态的方法

Axure RP 8设置动态面板状态的方法

设置动态面板状态需要注意鼠标单击需要设置面板状态,而不是显示隐藏,不然无法控制动态面板里的各个元件的显示与隐藏 ˂a href="post/523.html"˃...

L2TP服务器,同一个局域网只能连接一台客户端的解决方案

 l2tp同一台服务器, 在一个局域网多个账号不能同时登陆的解决方案原因:由于同一个局域网交换机,一般都是一层交换机,承载不了1个以上的IPSEC的加密解决方案:关闭IPSEC加密就可以多账...

在hyper-v安装centos7后与windows10共享文件夹

 挂载Windows共享文件夹的方法:1.在windows10宿主机下新建一个共享文件夹,比如叫share_win,并将其设为共享文件夹。2.在CentOS下,执行命令:mount ...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。