数据库SQL题目求解答!急求!

设有如下3个关系模式:
职工 EMP(职工号,姓名,性别,出生年月)
工程 PRJ(工程编号,工程名称,预算)
报酬 SAL(职工号,工程编号,工资)
用SQL语句,完成第(1)-(6)题。
(1)创建“报酬”表,其中主码为“职工号,工程编号”,外码为“职工号”和“工程编号”
(2)按照职工号统计每个职工的总收入。
(3)检索所有预算超过100万的工程的情况。
(4)将参加了101号工程的职工工资提高10%。
(5)创建一个查询职工承担工程的视图VPS,VPS包括职工号、姓名、工程名称和工资属性。
(6)将“报酬”表的查询权限授给用户王红。

1.CREATE TABLE 报酬
(职工号 VARCHAR(15),
工程编号 VARCHAR(15),
工资 VARCHAR(15),
PRIMARY KEY(职工号),
REFERENCES (职工号),
REFERENCES (工程编号))

(PS 下外码为“职工号”和“工程编号” 这个要指明是那个表的外键 所以上面我写的是错的
还一个 一个裱中只能有一个主键其中主码为“职工号,工程编号” 所以这句话也是错的)

2.SELECT 职工号,count(工资)
FROM 报酬
GROUP BY 职工号

3.SELECT * FROM 工程 WHERE 预算>100W

4.SELECT (工资+工资*10%) FROM 报酬 WHERE 工程编号=101

5.CREATE VIEW VPS (职工号、姓名、工程名称,工资)
AS SELECT 职工.职工号,职工.姓名,工程.工程名称,报酬.工资
WHERE 职工,报酬,工程

6.GRANT SELECT ON 报酬 TO 王红
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-10
(1).---------------------------------
CREATE TABLE SAL (
职工号 VARCHAR(20),
工程编号 VARCHAR(10),
工资 DOUBLE,
PRIMARY KEY(职工号,工程编号),
FOREIGN KEY(职工号) REFERENCES EMP(职工号),
FOREIGN KEY(工程编号) REFERENCES EMP(工程编号),
);
(2)------------------------------------
SELECT 职工号,COUNT(工资)
FROM SAL
GROUP BY 职工号;
(3)-------------------------------------
SELECT 工程编号
FORM PRJ
WHERE 预算>1000000;
(4)------------------------------------
UPDATE SAL
SET 工资=工资*110%
WHERE 工程编号='101';
(5)------------------------------------
CREATE VIEW VPS
AS
SELECT 职工号,姓名,工程编号,工资
FROM SAL,PRJ,EMP
WHERE EMP.职工号=SAL.职工号 AND PRJ.工程编号=SAL.工程编号;
(6)------------------------------------
GRANT SELECT
ON TABLE SAL
TO 王红;本回答被提问者采纳
第2个回答  2012-12-10
1.create table sal(职工号 varchar(10) foreign key references EMP(职工号),工程编号 varchar(10) foreign key references 工程(工程编号),工资 money,primary key(职工号,工程编号))
2.select 职工号,count(工资) as 总收入 from SAL group by 职工号
3.select * from EMP,PRJ,SAL WHERE EMP.职工号=SAL.职工号 and PRJ.工程编号=SAL.工程编号 and 预算>1000000
4. UPDATE SAL SET 工资=工资*1.1 where 工程编号='101'
5.create view vps as select emp.职工号,姓名,工程名称,工资 from EMP,PRJ,SAL WHERE EMP.职工号=SAL.职工号 and PRJ.工程编号=SAL.工程编号
6.grant select on table sal to 王红本回答被网友采纳
第3个回答  2012-12-10
z

SQL问题.求高人解答...急!急..
正确答案是 31 A 外键可以确定主表的唯一一行 32 C 31.在SQL Server2000数据库系统中,主键用来唯一地表示表中的每一行,外键用来强制”子表”和”主表” 间的引用完整性,下列关于主键和外键的理解正确的是( A ).(选择一项)(a)选择主键的两个原则是最少性和稳定性 (b)在同一张表中,只能用...

刚学数据库,遇到一道关于数据库sql语句的题目,实在不会,请高手帮忙解答...
1. select * from EMPLOYEE where Salary>(select avg(Salary) from EMPLOYEE group by Dnumber)2. select * from EMPLOYEE where ESSN in (select ESSN from WORKS_ON group by Pnumber,ESSN having Count(1)>=3)3. -- 每个部门的所有职工在每个项目中的工作总时数 Create View DeptPro AS...

用sql语句解决下列问题,求解答!!!
1、分析:最后输出的维度包含:核算单位(采购类别)、月份、供应商、实际入库数量、实际入库均价、实际入库金额 2、方案:按照前三个维度进行group by即可。select 核算单位(采购类别),月份,供应商,sum(实际入库数量) as 实际入库数量,sum(实际入库金额) as 实际入库金额,sum(实际入库金额) \/ sum(...

下面这个sql问题,求大佬帮忙解答一下
第一题 图一问题一: 从增量表中增加数据或修改, 已知ID为主键, 可以使用MERGE INTO语句 p1q1 图一问题二: 通过一个表对主表数据更新,需要判断是否存在关联去更新 请点击输入图片描述 p1q2 第二题 图二问题一: 关键点在于关联查询,排序取rownum和分组序号获取 p2q1 p2q1res 图二问题二: 分组,...

急求SQL题目答案,答的好的悬赏100!~非常急,明天其末考题!
create proc aaa select 2)、以表格的形式返回本课程的平均分数。五、根据要求做题 1、创建用户自定义函数fun,求N!。(6分)2、在pubs库的authors表上创建触发器my_trigger2,它被操作DELETE所触发,且要求触发触发器的DELETE语句在执行后被取消。(6分)...

数据库原理与应用的一道综合应用题,用SQL语句解答 急!!! 微信发红包
sno char(6) not null,cno char(3) not null,grade int default '0',primary key(sno,cno),foreign key(sno) references XSB(sno),foreign key(cno) references KCB(cno));(2)、alter table XSB add sumcredit int default '0';(3)、insert into XSB values('081101','王英','女',...

SQL数据库 请高手解答一下问题 实在不会做。本人初学者
存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数来执行它,存储过程并不是自动的,需要用户调用。存储过程\/函数:函数有限制只能返回一个标量,而存储过程可以返回多个。并且函数是可以嵌入在SQL中使用的,可以在SELECT等SQL语句中调用,而存储...

SQL题目,急求解答,感谢
1、CREATE TABLE `科室` (`科室号` VARCHAR(32) NOT NULL,`科室名` VARCHAR(100) NULL DEFAULT NULL,`值班电话` VARCHAR(20) NULL DEFAULT NULL,PRIMARY KEY (`科室号`))2、select * from '医生' where 职称='主任医师'3、select '病人'.姓名,'病人'.'出生日期' from '病人','门诊记录...

oracle数据库中中位数用sql的求法。菜鸟求高手解答
--1 select median (sales) from total_sales --2 select avg(sales)from (select row_number() over(order by sales) as rn, name, sales from total_sales) t,(select count(*) \/ 2 as mid_c from total_sales) b where rn = b.mid_c or rn = trunc (b.mid_c+1)...

sql数据库,求解答,平均分
1.select 身份证号码 from 学生成绩表 where 物理成绩 < 602.select 身份证号码 from 学生成绩表 where 英语成绩 between 70 and 803.select 身份证号码 from 学生成绩表 group by 语文成绩,英语成绩,数学成绩 having avg(语文成绩,英语成绩,数学成绩) < 70 ...

相似回答