sql 两个关联表数据删除的问题

例 表 a 有aid和name 表b 有bid bid数据为aid值 怎么根据name删除b表数据

sql
0

3个回答

delete t from b t where exists(select 1 from a where aid=t.bid and name ='你的name ')

0

delete from b where bid=(select aid from a where name='你的name')

0

delete from b where b.bid in (select aid from a where a.name = 'name');

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Oracle数据库中如何查询,删除多表关联数据
Oracle数据库中如何查询,删除多表关联数据要根据条件删掉一行数据(根据单号及采购组织名称) 要根据条件删掉一行数据(根据单号及采购组织名称) 例如要删这一行 :Index_number = 0000000032 先根据条件查询到这一条数据 SELECT * FROM JY_SUPASS_FLOW flow LEFT JOIN JYPURORG purorg ON flow.PUR_ORG_I...
mybatis一条sql删除三个无关联关系的三个表
框架为mybatis 目标:用一条sql删除三个表三个不关联的数据 过程:先是寻找一条sql能不能同时删除,百度不到,放弃 接着看,发现可以把三条sql整合为1条,在Navicat中运行成功,但是在idea运行不了,报错 幸好找到了解决办法,在数据库链接加上这一条配置就行了:&allowMultiQueries=true 有些人不知道数据库链接是什么,举个例子:hikariCon...
mysql多表关联数据同时删除
category(栏目信息表)和news(新闻数据表)。 category中的id(栏目编号)字段作为该表的主键(primary key).唯一标识了一个栏目的信息。 news 中的id字段作为该表的主键(primary key).唯一标识了一个栏目的信息。 category_id(栏目编号)字段与category表的id字段相关联。 1.SQL删除语句 [cod...
mysql多表关联数据删除
参考地址:https://www.cnblogs.com/princessd8251/articles/5551651.html点击打开链接
SQL删除多表关联数据的三种方法
1.级联删除  create table a ( id  varchar(20) primary key, password varchar(20) not null ) create table b ( id int identity(1,1)  primary key, name varchar(50) not null, userId varchar(20), fo
Sql Server中删除一个表中关联另一个表中对应的数据
delete 表A from [表A] as a inner join [表B] as b on a.ID=b.ID
sql语句delete----关联两表删除两表内容
关联两表删除两表内容 delete t1,t2  from t_pic as t1 left join t_pic_muc_comments as t2 on t1.pmcid=t2.pmcid  where t1.pid=1
用sql语句删除数据表中重复的数据
在实习中,用“小偷”程序采集到了大量的数据,可是有不少的是重复的,根据实习要求把重复的数据删除(要保留一条记录),另外还要把几个数据表中的数据合并,放在一个数据表中。根据自己尝试的经验,把几点下来。1、将数据表合并     在sql语句中有个SELECT INTO 语句(SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档),如:SELECT column_
Linq 删除关联多表、或不关联的表 、多张表 一次性删除的方法
话不多说,先上代码  我用的架构是MVC 在控制器写sql代码 //第一种删除方法: 查询要删除数据的主键ID var ModelYouXiuMingDan = dbXSPY.XSSSPGPY_YouXiuMingDanBiao.Where(m => m.PingYouSheDingID == PySheDingID).ToList();
在存储过程中使用事务处理 sql server 删除多表操作一致性的问题
--前面的变量省略 begin select @num=COUNT(1) from sDepartment where DepoID=@DepoID if @num begin     begin try     begin tran   insert into sDepartment(DepoID, DepName, UpperID, DepFlag, [Status],
多表关联更新和关联删除(SQL)
转自https://www.cnblogs.com/ziyun20160613/p/6346616.html 在SQL中,经常用到关联查询,比如select a.* from A a inner join B b on a.PId=b.FId where 条件,SQL中也支持类似的关联更新和关联删除。 关联更新语法: update a set a.字段=” from A ...
oracle多表关联更新(update)/删除(delete)数据表的的写法
1) 两表(多表)关联update -- 仅在where字句中的连接 SQL 代码 --这次提取的数据都是VIP,且包括新增的,所以顺便更新客户类别 update customers a -- 使用别名 set customer_type='01' --01 为vip,00为普通 where exists (select 1 from tmp_cust_ci
MySql 使用 leftjoin 删除2个表的数据
如果有两张表分别A表和B表,想同时删除主表和子表的数据。 delete (别名) from tblA (别名) left join tblb (别名) on。。。用法 DELETE a,b from A a   LEFT JOIN B b ON a.id=b.aid  where 。。。判断条件 如果加2个表的别名是同时删除2个表的数据,大家可以根据自己需求来选择。        ...
解决多表关联删除的问题,深度为3
1、主题表下面有检查表(tb_inspection_record)、季度表、抽样表,这三张表与主体表(tb_production_subject)关联,三张表的id里有主体id,检查表下面又有四张表关联。 2.需要实现的是删除主体表的同时删除下面所有表。 3.删除主题表就要删除与之关联的检查表、季度表、抽样表,在此之前先删除检查表下面的四张表。检查表的mapping文件:4. 4.主
oracle Delete删除通过其他表关联查询到的数据
有两个表 表 A 字段 ID1          表 B 字段ID2 结构都相同删除B里 所有B.ID2=A.ID1 匹配的数据delete from B a where exists (select * from A b where B.DI2=A.ID1)注:B的ID2字段和A的ID1字段要建索引...
数据库中两张表之间的数据同步实现思路(增加、删除、更新)
分别创建增加、删除、更新的触发器(Trigger)来达到两张表之间数据同步的目的。 1:数据同步增加: 如有两张表——A表和B表,创建触发器使当A表插入数据后B表也同步插入数据。其中B表插入数据的字段需要同A表中的字段相对应。 CREATE TRIGGER 触发器名称 ON A表 AFTER INSERT AS BEGIN INSERT INTO B表(B表字段1,B表字段2,B表字段3
MySQL主外键表关联表数据的同时删除
今天做了实验,要求将满足某个条件的主表和相关联的几个子表的数据全部删除,其实这个要求很简单,如果子表在创建外键的时候指定了ON DELETE CASCADE,则直接从主表中删除相关记录,子表中数据也会一起删除。但是现在的子表外键创建时候没有加此语句,如何来实现呢?  条件:p(父表)没有ON DELETE CASCADE       c(子表) mysql> delete a,b from p
sql中删除多张表的数据
insert a.id into #kkk select a.id from a,b where a.id=b.id delete from a where a.id in(select id from #kkk) delete from b where b.id in(select id from #kkk) ------------------------- 第一句得到两个表里的相同记录并插
DB2-数据的级联删除
数据的级联删除操作现在有三张表: GRANDFATHER, FATHER, SON(对,没错,就是爷爷, 父亲和儿子) GRANDFATHER : 李一代(id=101); FATHER : 李二代1(id=201)和李二代2(id=202); SON : 李三代1(id=301), 李三代2(id=302), 李三代3(id=303), 李三代4(id=304). 表之间的关系如下: 现在要求
SQL小技巧-关联表重复数据清除处理办法
一、背景描述    数据库有订单表和订单明细表两张表,订单表与订单明细表的关系为一对多,通过订单ID作为外键进行关联,订单表的订单号字段本应设计成唯一约束,但由于数据库约束未在表里体现,并且由于业务操作的一些原因,导致订单表里出现重复的订单号,并且这些订单记录下面都关联了货品,现需要将重复的订单记录删除,同一个订单号只保留一条记录,其余被删除的订单表记录下面的明细记录全部移到保留的那条记录上面。表...
Oracle数据库删除数据主外键关联处理
情景:删除Oracle数据库中的某条数据时,有时候会出现主外键关联无法删除数据的错误信息,详细错误信息如下: ORA-02292:integrity constraint(xx) violated 这时,我们使用下面三个步骤就可以成功删除数据。 第一步:让主键失效 alert table table_name disable primary key cascade 第二步:删除表中所...
MySql,delete数据时别名和表关联的正确使用方法
正解: DELETE a1, a2 FROM t1 AS a1 INNER JOIN t2 AS a2 WHERE a1.id=a2.id; DELETE FROM a1, a2 USING t1 AS a1 INNER JOIN t2 AS a2 WHERE a1.id=a2.id; 我们常犯得错误 DELETE t1 AS a1, t2 AS a2 FROM t1 INNER JOIN
MYSQL中delete删除多表数据与删除关联数据
在mysql中删除数据方法有很多种,最常用的是使用delete来删除记录,下面我来介绍delete删除单条记 录与删除多表关联数据的一些简单实例。1、delete from t1 where 条件2、delete t1 from t1 where 条件3、delete t1 from t1,t2 where 条件4、delete t1,t2 from t1,t2 where 条件前3者是可行的,第4
mysql删除有外键关联的表数据
第一种:(不要外键约束) 手动删除外键约束; 删除表数据 第二种:(保留外键约束) SET FOREIGN_KEY_CHECKS = 0;    TRUNCATE TABLE 表名;   SET FOREIGN_KEY_CHECKS = 1;  ------------------------------------------------------------------
T-SQL_用一个存储过程向两个关联表同时插入数据
这个问题的关键在于:如何立即获取到刚插入的记录的自动编号。因为这个编号需要立即插到另一个表中。例如:有两个表表格Users的列清单(用户表)名称注释数据类型主要的外来键U_ID用户编号intTRUEFALSEU_PIN身份证号char(18)FALSEFALSEU_Name姓名char(10)FALSEFALSEU_Sex性别,1为男,0为女bitFALSEFALSEU_Age年龄intFALSE...
事实表关联其他表预防发散处理
主表对应关联表,一条关联多条的时候就会发散数据。导致指标异常。 select count(1),'all' from table_a union all select count(1),'left join' from table_a a left join table_b b on a.id=b.id; ...
MySQL多表关联删除
t2和t3数据表中存有他t1表中数据的id 选择删除t1表中的数据以及t2和t3表中相关(task_id)的数据 SQL语句如下: DELETE t1,t2,t3 from cl_delivery_task t1 LEFT JOIN xh_saleact t2 ON t1.id=t2.task_id LEFT JOIN xh_sale_detail t3 ON t1.id=t3.tas...
数据库删除(连表删除)
1、从数据表t1中把那些id值在数据表t2里有匹配的记录全删除掉DELETE t1 FROM t1,t2 WHERE t1.id=t2.id  或 DELETE  FROM t1 USING t1,t2 WHERE t1.id=t2.id 2、从数据表t1里在数据表t2里没有匹配的记录查找出来并删除掉DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHE...
mysql中快速删除表中某些数据(关联删除 / 关联更新)
数据库中删除表格数据,一般直接执行 delete 语句,如: delete from test where id = ... delete from test where id in (...) 有时表格中含有大量数据,执行删除效率会低很多,即使在对应列增加索引,速度也不太让人满意,此时可以使用关联表删除 -- 创建临时表,保存要删除的数据列值,如:order_id CREATE...
mybaits多表删除问题
两种方法 第一种 1、修改数据库连接参数加上allowMultiQueries=true hikariConfig.security.jdbcUrl=jdbc:mysql://xx.xx.xx:3306/xxxxx?characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&allowMultiQueries
数据库中两张表之间的数据同步增加、删除
推荐:sql server 中合并某个字段值的实例 sql server 中合并某个字段值的实例,需要的朋友可以参考一下 分别创建增加、删除、更新的触发器(Trigger)来达到两张表之间数据同步的目的。  1:数据同步增加:  如有两张表——A表和B表,创建触发器使当A表插入数据后B表也同步插入数据。其中B表插入数据的字段需要同A表中的字段相对应。  复制代码代码如下:www.mb
SQL 去掉两个表中重复的数据
select s.c_package_name,s.c_category_code,s.count1 from (select *,count(c_package_name) as count1 from `tb_app_top` group by c_package_name) s where s.count1>1; select s.c_package_name,s.c_category_co
空值判断,双表关联数据统计查询
SQL空值判断 oracle的是NVL(value,nullvalue) pgsql的是COALESCE(value,nullvalue) mysql的是IFNULL(value,nullvalue) 双表关联数据统计查询 一个表是数据,一个表是项目 SELECT result2.facility_type_num, result2.facility_type_nam...
Oracle中主从多表删除数据
Oracle中主从多表删除数据时,必须用级联删除吗? 一个主表,带了三个从表,一一关联,A为主表 A->B->C->D 从A表中删除一条数据时,要把BCD表里相关的数据都删除的话 用什么方法最好,必须用级联删除吗? -------------- 1.用触发器; 2.建表时加关键字。比如B表某列关联A表主键列,则: create table b (col number ref
oracle删除表数据的两种的方式
平时写sql中我们都会用到删除语句,而平时删除表数据的时候我们经常会用到两种方式: 在oracle中,truncate、delete都可以删除表数据,具体的区别以及sql语法如下: truncate table [表名]; delete from [表名]; delete与truncate的区别: delete:会产生rollback,如果删除大数据量的表速度会很慢,而且同时会占用很多...
delete表1条件是另一个表中的数据,多表连接删除(转)
DELETE删除多表数据,怎样才能同时删除多个关联表的数据呢?这里做了深入的解释: 1、 delete from t1 where 条件 2、delete t1 from t1 where 条件 3、 delete t1 from t1,t2 where 条件 4、delete t1,t2 from t1,t2 where 条件 前 3者是可行的,第4者不可行。
SQL Server 自关联表的级联删除
直接看图 对应的 sql语句 WITH n AS (     SELECT RoleCode, DirID         FROM dbo.RolePages WHERE DirID=6 AND RoleCode=4     UNION ALL     SELECT e.RoleCode, e.DirID         FROM RolePages e JOIN n O
一个sql语句,根据相同id字段删除两个表里面的数据,
表1 表2 表1:是失物招领信息表            表2:存放照片的表 根据form表的id,要删除已经找到失物的信息, 并且还要删除pic表中的图片的数据. (提示;pid的ID 和 form的id 是一个值) sql语句如下...
MYSQL 同时删除多个表(注意非T-SQL)
1. 删除一个表中的数据 delete from department where name='Asset Management'; 2. 删除两个表中的数据 delete employee, employeeSkills from employee, employeeSkills, department where employee.employeeID = employee
oracle 一次删除多张表
通过拼接sql语句来完成 例如有如下个表 想一次性删除,执行如下语句 select 'drop table '||table_name ||';' as dropsql from USER_TABLES where table_name like 'CLASS%'; 结果如下 结果为删除各个表的语句,通过程序循环执行即可
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 区块链问题 教育大数据多维度关联