以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 同一台设备,先安装后撤出,现存表如何删除这两个记录? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=46972) |
-- 作者:tomcat521 -- 发布时间:2014/3/2 16:02:00 -- 同一台设备,先安装后撤出,现存表如何删除这两个记录? 给设备做了“安装、维修、维护、撤出”四个表:
从“安装”和“撤出”两个表,建了“现存查询”表:
Select 客户号,省份,医院名称,安装科室,\'安装\' as 类型,设备型号,设备序列号 From {安装} UNION select 客户号,省份,医院名称,安装科室,\'撤出\' as 类型,设备型号,设备序列号 From {撤出}
当客户号+设备序列号同时出现在安装和撤出类型的时候,这两行记录在“现存查询”表里如何清除? 例如,截图中的12030045这台设备,在KH0003先安装,后来又撤出了,这两行怎么清除呢? 请大家给予提示,谢谢!
|
-- 作者:lsy -- 发布时间:2014/3/2 17:43:00 -- Select 客户号,省份,医院名称,安装科室,\'安装\' as 类型,设备型号,设备序列号 From {安装} Where 客户号 Not In (Select 客户号 From {撤出} Where 客户号 Is Not Null) And 设备序列号 Not In (Select 设备序列号 From {撤出} Where 设备序列号 Is Not Null) UNION select 客户号,省份,医院名称,安装科室,\'撤出\' as 类型,设备型号,设备序列号 From {撤出} Where 客户号 Not In (Select 客户号 From {安装} Where 客户号 Is Not Null) And 设备序列号 Not In (Select 设备序列号 From {安装} Where 设备序列号 Is Not Null)
Is Not Null 如果不加上,碰到空值的时候,就报错,而且还看不出错在哪。 [此贴子已经被作者于2014-3-2 18:01:45编辑过]
|
-- 作者:tomcat521 -- 发布时间:2014/3/3 20:44:00 -- 谢谢lsy,使用您的代码出现了新的问题,会缺少一些记录。 我自己再琢磨琢磨。
|