当前位置:首页 » 编程语言 » sql表连接删除
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql表连接删除

发布时间: 2022-08-09 20:34:30

‘壹’ sql server数据库怎样同时删除两张表的数据

1、打开SQL Server 2008 并连接一个数据库。

‘贰’ sql多表连接 查询 与删除

1:
SELECT
客户姓名
订单号
时间
FROM
订单表
JOIN 客户表
ON ( 订单表.UID = 客户表.UID)
JOIN
订单时间表
ON ( 订单表.DID = 订单时间表.DID)
WHERE
( SELECT COUNT(*) FROM 订单表 d WHERE d.UID = 客户表.UID ) > 3

2:
-- 先删除 订单时间表
DELETE
订单时间表
WHERE
DID IN (
SELECT DID FROM
订单表
JOIN 客户表
ON ( 订单表.UID = 客户表.UID)
WHERE
客户姓名 = '张三'
);

-- 后删除 订单表.
DELETE
订单表
WHERE
UID IN ( SELECT UID FROM 客户表 WHERE 客户姓名 = '张三');

-- 最后删除 客户表
DELETE
客户表
WHERE
客户姓名 = '张三';

‘叁’ sql三张连接的表怎么做删除啊

用触发器

create TRIGGER udt_a
ON dbo.a
FOR delete AS

IF @@rowcount = 0 RETURN
DECLARE @a_id int

SELECT @a_id = a_id FROM deleted

DECLARE @b_id int

select @b_id=b_id from b where a_id=@a_id

DELETE b WHERE a_id=@a_id
IF @@error<>0 OR @@rowcount=0
BEGIN
RAISERROR('没有对应数据',16,-1)
ROLLBACK TRANSACTION
RETURN
END
DELETE c WHERE b_id=@b_id
IF @@error<>0 OR @@rowcount=0
BEGIN
RAISERROR('没有对应数据',16,-1)
ROLLBACK TRANSACTION
RETURN
END

‘肆’ SQL如何删除多表连接中的相同列(关联列)

如果是删除单个字段重复可用in,如果是删除多个字段重复可用exists。
如表1数据:
id name age
1 张三 19
2 李四 20
3 王五 17
4 赵六 21
表2数据:
id name age
1 张三 19
2 李四 21
5 王五 14
如果删除表1中id和表2相同的内容:

1

delete from 表1 where id in (select id from 表2)

如果删除表1中id,name和age都与表2相同的数据

1
delete from 表1 where exists (select 1 from 表2 where 表1.id=表2.id and 表1.name=表2.name and 表1.age=表2.age)

‘伍’ sql怎么删除一个表中的所有数据

1、打开SQL Server 2008 并连接一个数据库。

‘陆’ sql多表连接删除问题

如果你只是需要不要查询结果里的数据,你这样操作即可。
将tb_score中的相关数据删除即可。
比如:你不想要张三的数据显示出来,张三的menid是1.
你这样操作。
delete
from
tb_score
where
menid=1即可。
如果要删除多个人的分数
你可以这样:delete
from
tb_score
where
menid
in(1,2,3)等。
建议你不要去删除tb_member和tb_class中的数据。因为这些数据是基础数据,你删除了,就不能恢复了。除非你真的不打算要这些数据。
如果只是不要显示结果,你只需要删除tb_score中的相关数据即可。这样你查询出来的数据就没有这些内容了。

‘柒’ C# SQL 删除 多表连接的数据

好像有类似 delete * from table1 t1 inner join table2 t2 on t1.id=t2.id 的写法.即可以一句delete所有依赖的data.

‘捌’ SQL 语句删除问题同时删除两个表内关联的数据

一个sql语句是没办法执行两个删除操作,如果你要实现上面的功能,有以下几个选择:
1.用外键关联删除,把B表的uid设成外键关联A表的ID,并关联删除操作
2.用存储过程,用事务来处理实现;

望采纳!

‘玖’ sql表连接如何删除相同的字段

这是一个逻辑判断,就算字段再多,也要将每个逻辑进行判断
你说的这个查询语句应该这样写
select a.*,b.4,b.5 ....
from A as a,B as b
where a.3=b.3;

就我所知的,现在好象还没有能够在查询中不显示某个特定字段,其他全显示的简便方法。一般要实现这个都会用程序实现,例如:

dim strfil as string,tmpfil as field,table1 as tabledef
set table1=表.....
for each filed in table1
if filed.name="不要的字段" then
'do nothing
else
if strfil="" then
strfil=filed.name & ","
else
strfil=strfil & "," & field.name
end if
end if
next
SQL="Select " & strfil & " From 表..."

其实在很多语言平台中都提供了一些帮助查询的类库,比如在.net中,可以通过DataGrid之类的控件,去掉那一列。