全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

mysql 求解求2个或以上字段为NULL的记录

核心代码

/*--------------------------------
求2个或以上字段为NULL 的记录
t1:
id, id1, id2, id3, id4, id5, id6
在t1 表中有个字段;
其中id是主键;
怎样打印其中个字段或以上为NULL 的记录id?
另外,存储过程中怎么实现按顺序一条一条读取记录最方便?
注:主键id 是没有顺序的,也可能是字符串的;
-----------------------------------------*/
drop table if exists t1;
create table t1(id int,id1 int,id2 int,id3 int,id4 int,id5 int,id6 int);
insert t1 select
1,1,1,1,1,null,null union all select 
2,null,null,null,1,2,3 union all select 
3,1,2,3,4,5,6 union all select 
4,1,2,3,4,5,null union all select 
5,null,3,4,null,null,null ;
delimiter $$
create procedure usp_c_null()
begin 
declare n_c int;
declare idd int;
declare cur cursor for 
select id,case char_length(concat(ifnull(id1,'@'),ifnull(id2,'@'),ifnull(id3,'@'),ifnull(id4,'@'),ifnull(id5,'@'),ifnull(id6,'@')))
-char_length(replace(concat(ifnull(id1,'@'),ifnull(id2,'@'),ifnull(id3,'@'),ifnull(id4,'@'),ifnull(id5,'@'),ifnull(id6,'@')),'@','') )
 when 6 then 6 when 5 then 5 when 4 then 4  when 3 then 3 when 2 then 2 when 1 then 1 else 0 end as c from t1;
declare exit HANDLER for not found close cur ;
open cur;
repeat 
fetch cur into idd,n_c;
if(n_c>=2) then
select * from t1 where id=idd;
end if ;
until 0 end repeat;
close cur;
end ;
$$
delimiter ;
/*
+------+------+------+------+------+------+------+
| id  | id1 | id2 | id3 | id4 | id5 | id6 |
+------+------+------+------+------+------+------+
|  1 |  1 |  1 |  1 |  1 | NULL | NULL |
+------+------+------+------+------+------+------+
1 row in set (0.10 sec)
+------+------+------+------+------+------+------+
| id  | id1 | id2 | id3 | id4 | id5 | id6 |
+------+------+------+------+------+------+------+
|  2 | NULL | NULL | NULL |  1 |  2 |  3 |
+------+------+------+------+------+------+------+
1 row in set (0.14 sec)
+------+------+------+------+------+------+------+
| id  | id1 | id2 | id3 | id4 | id5 | id6 |
+------+------+------+------+------+------+------+
|  5 | NULL |  3 |  4 | NULL | NULL | NULL |
+------+------+------+------+------+------+------+
1 row in set (0.17 sec)
*/


# mysql  # NULL  # MySQL中查询字段为空或者为null的方法  # Mysql字段为null的加减乘除运算方式  # 详解MySQL的字段默认null对唯一索引的影响  # mysql实现批量修改字段null值改为空字符串  # mysql字段为NULL索引是否会失效实例详解  # mysql 字段定义不要用null的原因分析  # 为什么mysql字段要使用NOT NULL  # MySQL中可为空的字段设置为NULL还是NOT NULL  # MySQL查询空字段或非空字段(is null和not null)  # MySQL字段为 NULL的5大坑  # 主键  # 有个  # 或以上  # 或以  # 过程中  # 上为  # drop  # table  # int  # insert  # select 


相关文章: 如何在Windows环境下新建FTP站点并设置权限?  制作网站的模板软件,网站怎么建设?  Android自定义控件实现温度旋转按钮效果  济南网站制作的价格,历城一职专官方网站?  创业网站制作流程,创业网站可靠吗?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  南宁网站建设制作定制,南宁网站建设可以定制吗?  如何在Tomcat中配置并部署网站项目?  建站主机如何选?性能与价格怎样平衡?  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  建站之星安装模板失败:服务器环境不兼容?  香港网站服务器数量如何影响SEO优化效果?  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  如何登录建站主机?访问步骤全解析  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  如何选择服务器才能高效搭建专属网站?  小建面朝正北,A点实际方位是否存在偏差?  网站制作需要会哪些技术,建立一个网站要花费多少?  网站制作价目表怎么做,珍爱网婚介费用多少?  简历在线制作网站免费版,如何创建个人简历?  宝塔建站教程:一键部署配置流程与SEO优化实战指南  平台云上自主建站:模板化设计与智能工具打造高效网站  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  实例解析Array和String方法  如何在服务器上配置二级域名建站?  一键网站制作软件,义乌购一件代发流程?  建站org新手必看:2024最新搭建流程与模板选择技巧  广州建站公司哪家好?十大优质服务商推荐  如何选择靠谱的建站公司加盟品牌?  临沂网站制作企业,临沂第三中学官方网站?  公司门户网站制作流程,华为官网怎么做?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  建站之星代理如何获取技术支持?  如何通过VPS建站实现广告与增值服务盈利?  建站之星导航菜单设置与功能模块配置全攻略  建站之星如何快速更换网站模板?  建站之家VIP精选网站模板与SEO优化教程整合指南  怎么将XML数据可视化 D3.js加载XML  如何通过NAT技术实现内网高效建站?  如何快速搭建二级域名独立网站?  如何在景安云服务器上绑定域名并配置虚拟主机?  ppt制作免费网站有哪些,ppt模板免费下载网站?  如何用VPS主机快速搭建个人网站?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。