DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: jsuguo
今日帖子: 27
在线用户: 23
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 rayhull ★☆☆☆☆ -
普通会员
2003/4/28 22:37:43
标题:
新手上路求救!!谢谢高手,请来看看我要做的sql,可能很简单。 浏览:2972
加入我的收藏
楼主: 新手上路求救!!谢谢高手,请来看看我要做的sql,可能很简单。
Person(Driver ID,Name,Address)
Car(License,Model,Year)
Accident(Report Number,Date,Location)
Owns(Driver ID,License)
Participated(Driver ID,Car,Report Number,Damage_Amount)

Driver ID, License,Report Number,Car Report Number 是candidate key

a. 找出有多少人有车并在1998年有事故。

请看看我答案正不正确:
SELECT COUNT(Driver ID) AS count,
FROM Person
WHERE Person.Driver ID IN WHERE
(SELECT Driver ID
FROM Participated
WHERE Participated.Report Number IN WHERE
(SELECT Report Number
FROM Accident
WHERE Date=1998)

b.加入一起新事故到这个数据库(具体数据可以假设)

这个我不知道怎么做,应为这里有5个关系,怎么才可以想上面那样不分开加,用嵌套的办法,一次都加呢?

c.删除'John Smith'他有一辆‘马自达‘。

这个问题和上面的一样,不知怎么一次删除。

d.更新‘damage amount' 在 'car' 的'license number'是' AA02 BBB' in the 'accident' with 'report number "AR2197" to $3000.

UPDATE Participated
SET Damage_Amount = “3000”
WHERE 

这里的 ‘car' 是 foreign key,所以在where那里不知道怎么写,也没有找到想关的例子,例子都太简单。

请高手帮帮忙!谢谢!


----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行74.21875毫秒 RSS