sql-SQL 表A(id,no,name)、表C(no)怎么判断每个人缺少的no并且把缺少的新增进表A

问题描述

SQL 表A(id,no,name)、表C(no)怎么判断每个人缺少的no并且把缺少的新增进表A
表A数据
(1,'A','张三','add')
(1,'B','张三','del')
(2,'A','李四','add')
(3,'B','王五','update')

表C数据
(A)
(B)
(C)

怎么判断每个人缺少的no并且把缺少的新增进表A ???
如张三缺少C,则新增(1,'B','张三','add')、(1,'C','张三','add');
李四缺少B、C,则新增(2,'B','李四','add')(2,'C','李四','add');
    王五缺少A、C,则新增(3,'A','王五','add')(3,'C','王五','add');
以此类推、、、

解决方案

以前发你的SQL,把中文的替换成你的字段,关键是 not in的时候加一个where就行。del的记录就当没有就行了。
 insert into ma(id,fe,vname,状态字段) values(
SELECT id,vname,fe,'add' FROM (
select c.*,c.vname + ','+c.fe as kid from (
select * from
(
select distinct id,vname from ma
) a,
(select fe from mb)
b
) c
) D
where kid not in(SELECT VNAME+','+FE FROM ma where 状态字段<>'del')
)

解决方案二:

记得以前写过吧,多了一个add,del,update。上面举例不清,没有说明白add,del,update和缺数是什么关系

解决方案三:

关于struts2中的There is no Action mapped for namespace / and action name .
struts2.X中There is no Action mapped for namespace/and action name或Struts dispatcher cannot be found
Could not find action or result: There is no Action mapped for namespace [/] and action name [GetG

解决方案四:

提供一个思路给你,先按照名字对A表的数据进行分组,再对分组的数据取出no和c表取交集,得出不在c表的no,最后插入该no对应的数据到a表。

时间: 2024-09-17 04:26:14

sql-SQL 表A(id,no,name)、表C(no)怎么判断每个人缺少的no并且把缺少的新增进表A的相关文章

JavaScript获取按钮所在form表单id的方法

 本文实例讲述了JavaScript获取按钮所在form表单id的方法.分享给大家供大家参考.具体如下: 这里使用javascript获取form表单按钮的id,可以通过下面的JS代码获取. 1 2 3 4 5 6 7 8 9 10 11 12 13 <!DOCTYPE html> <html> <body> <h1>www.sharejs.com</h1> <form id="form1"> <button

sqlserver A表插入B表后如何返回A表原有ID和插入B表后新增ID的对应关系

问题描述 sqlserver A表插入B表后如何返回A表原有ID和插入B表后新增ID的对应关系 表:A id(自增), name 1 'a' 2 'b' 表 B id(自增), name 3 'c' 4, 'd' 执行 insert into B(name) select name from A 表 B id(自增), name 3 'c' 4 'd' 5 'a' 6 'b' 现在的问题是如何返回 A表插入B表后新增的ID及原A表的ID对应关系 newID oldID 5 1 6 2 解决方案

JavaScript获取按钮所在form表单id的方法_javascript技巧

本文实例讲述了JavaScript获取按钮所在form表单id的方法.分享给大家供大家参考.具体如下: 这里使用javascript获取form表单按钮的id,可以通过下面的JS代码获取. <!DOCTYPE html> <html> <body> <h1>www.sharejs.com</h1> <form id="form1"> <button id="button1" type=&q

数据-C# sql 查找每个分库中某表某ID字段重复的记录

问题描述 C# sql 查找每个分库中某表某ID字段重复的记录 目前30个分库中,每个库目前至少有100万条记录,每个库同有一个数据表A,表结构相同.每个表的主键叫recordID,但是各个分库间会重复不唯一.需求一个思路.忽略数据表设计问题,目前就是做出这个工具而已,表设计问题不管. 目前我是利用Sorteddiction的contains方法判断重复,但是会出现内存溢出的问题.OutOfMemory 解决方案 建临时表,先把所有表的recordID集中起来,然后再判断重复.

sql根据一个表的id修改另一个表的内容

问题描述 sql根据一个表的id修改另一个表的内容 sql根据一个表的id修改另一个表的内容,假如有两个表,A,B a表设置了b表的外键,想 根据b表的id,update A表的数据,sql语句怎么写,求大神帮帮忙,另外 按照这样的,删除功能怎么写 解决方案 update table set xxx = xxx where 主键 in (select 外键 in table2 where id = xxx) 解决方案二: sql 判断一个表的数据不在另一个表中SQL 根据一个表更新另一个表的内容

sql 2000清空后让表的id从1开始等数据库操作_MsSql

truncate table 表名 ( 数据不可恢复性的删除 truncate 标识列会重排 ) LinqUtil.Db.ExecuteCommand("TRUNCATE TABLE warehousing"); //warehousing为表名,此种删除效率更高,且会清空计数器,但是有外键的表则不能用,可以通过删除外键后使用 LinqUtil.Db.ExecuteCommand("delete ioinfo"); //因为此种删除不能清空计数器,所以下面还的清空

sql 2000清空后让表的id从1开始等数据库操作

truncate table 表名 ( 数据不可恢复性的删除 truncate 标识列会重排 ) LinqUtil.Db.ExecuteCommand("TRUNCATE TABLE warehousing"); //warehousing为表名,此种删除效率更高,且会清空计数器,但是有外键的表则不能用,可以通过删除外键后使用 LinqUtil.Db.ExecuteCommand("delete ioinfo"); //因为此种删除不能清空计数器,所以下面还的清空

sql server 怎么判断一个表里面的字段拆分之后是否可以在另一个表的字段里面查到数据

问题描述 sql server 怎么判断一个表里面的字段拆分之后是否可以在另一个表的字段里面查到数据 其中F_Split是分割以逗号连接的字符串的方法 怎么判断string字段拆分之后的数据是否能在@a表中的id字段找到对应的记录 insert into @a(idname)values(1'A')insert into @a(idname)values(2'B')insert into @a(idname)values(3'C')select * from @ainsert into @c(s

c#-C#连接SQL,产生递增id的问题

问题描述 C#连接SQL,产生递增id的问题 string sqlCommand5 = "select max(id) from VisitorLog"; SqlDataAdapter sqlDataAdapter5 = new SqlDataAdapter(sqlCommand5, conn); DataSet ds5 = new DataSet(); sqlDataAdapter5.Fill(ds5); if (ds5 != null && ds5.Tables[0