sql语句删除元组
person(driver_id(PK),name,address)car(license(PK),model,year)accident(report_number(P...
person(driver_id(PK),name,address)
car(license(PK),model,year)
accident(report_number(PK),date,location)
owns(driver_id(PK),license(pk))
participated(report_number(PK),license(PK),driver_id,damage_amount)
在创建了数据表之后要删除“Mazda belonging to John Smith”
我的理解就是删除car和owns的相关元组...
问题就是我写的sql语句,如果是delete from car,owns它会报错...就报在逗号上...
如果分步的话,第一步把一个表中的元组删了,第二步就找不出另一个表中的元组了...Orz...
求删除的方法... 展开
car(license(PK),model,year)
accident(report_number(PK),date,location)
owns(driver_id(PK),license(pk))
participated(report_number(PK),license(PK),driver_id,damage_amount)
在创建了数据表之后要删除“Mazda belonging to John Smith”
我的理解就是删除car和owns的相关元组...
问题就是我写的sql语句,如果是delete from car,owns它会报错...就报在逗号上...
如果分步的话,第一步把一个表中的元组删了,第二步就找不出另一个表中的元组了...Orz...
求删除的方法... 展开
2个回答
展开全部
删除“Mazda belonging to John Smith”
我理解就是删除 smith的mazda 而不是删除smith
使用这样的语句
delete from car where license=(select owns.license from owns inner join person on owns.driver_id=person.driver_id where person.[name]='John Smith') and model=‘mazda’
这样就删除了 属于john smith的 mazida 车
当然如果你还想删除 john的话 剩下的条件也足够啊
我理解就是删除 smith的mazda 而不是删除smith
使用这样的语句
delete from car where license=(select owns.license from owns inner join person on owns.driver_id=person.driver_id where person.[name]='John Smith') and model=‘mazda’
这样就删除了 属于john smith的 mazida 车
当然如果你还想删除 john的话 剩下的条件也足够啊
展开全部
不能一个语句同时删除两个表中的记录。
我觉得题意应该是删除属于John Smith的马自达,语句如下:
delete from car where model = 'Mazda' and license in (select owns.license from owns where owns, person where owns.driver_id = person.driver_id and person.name = 'John Smith')
我觉得题意应该是删除属于John Smith的马自达,语句如下:
delete from car where model = 'Mazda' and license in (select owns.license from owns where owns, person where owns.driver_id = person.driver_id and person.name = 'John Smith')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |