请教关于sql 中 delete from 删除以子查询中的数据的问题

我要删除dbo.Loginss表中如下的数据应该怎么写语句,谢谢大侠们selectss.*fromdbo.LoginssinnerjoinServergsonss.Ser... 我要删除 dbo.Login ss表中 如下的数据 应该怎么写语句,谢谢大侠们
select ss.* from dbo.Login ss
inner join Server gs on ss.ServerId=gs.ServerId
inner join Area ga on gs.AreaId=ga.AreaId
inner join Game g on ga.GameId=g.GameID
where g.GameId=55 and ss.LoginDateId=20010208 and gs.ServerId=36
展开
 我来答
百度网友17e10ab
2012-10-25 · TA获得超过1177个赞
知道小有建树答主
回答量:910
采纳率:0%
帮助的人:559万
展开全部
我看你这几个表好像有主子表关联,所以不能直接从SS中删,删了数据库会报错,要先去子表中删了要删的记录,消除子记录之后才能删除主表。
先删Game 然后删area 然后删 server 最后才能删login中的数据
unitech2010
推荐于2017-11-25 · TA获得超过1062个赞
知道小有建树答主
回答量:1025
采纳率:100%
帮助的人:899万
展开全部
你要是只要删除ss表 中的数据
直接用以下的方法就可以了
delete ss from dbo.Login ss
inner join Server gs on ss.ServerId=gs.ServerId
inner join Area ga on gs.AreaId=ga.AreaId
inner join Game g on ga.GameId=g.GameID
where g.GameId=55 and ss.LoginDateId=20010208 and gs.ServerId=36
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0319a0e
2012-10-25 · TA获得超过2.2万个赞
知道小有建树答主
回答量:2080
采纳率:85%
帮助的人:1141万
展开全部
delete from dbo.Login ss
where ss.date=20010208
and ss.Serverid =
(select top 1 gs.Serverid
from Server gs,Area ga,Game g
where ga.Areaid =gs.Areaid
where g.Gameid =55 and ga.Gameid =g.Gameid)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hcao_sz
2012-10-25 · TA获得超过173个赞
知道答主
回答量:124
采纳率:0%
帮助的人:95.7万
展开全部
delete from dbo.Login ss where
exists (
select 1 from Server gs, Area ga,Game g
where gs.AreaId=ga.AreaId
and ga.GameId=g.GameID
and g.GameId=55 and ss.LoginDateId=20010208 and gs.ServerId=36
and ss.ServerId=gs.ServerId
);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式