1、设有如下关系表R: R(No,NAME,SEX,AGE,CLASS) 主关键字是NO 其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。 写出实现下列功能的SQL语句。 ①插入一个记录(25,“李明”,“男”,21,“95031”); 。 ②插入“95031”班学号为30、姓名为“郑和”的学生记录; 。 ③将学号为10的学生姓名改为“王华”; 。 ④将所有“95101”班号改为“95091”; 。 ⑤删除学号为20的学生记录; 。 ⑥删除姓“王”的学生记录; 。
试用SQL语言写出下列查询: (1)找出店员人数不超过100人或者在长沙市的所有商店的代号和商店名。 3、 在名称为商品库的数据库中包含有商品表1和商品表2,它们的定义分别为: 商品表1( 商品代号 char(8),分类名 char(8),单价 float ,数量 int ) 商品表2( 商品代号 char(8),产地 char(8),品牌 char(6)) 在名称为教学库的数据库中包含有学生、课程和选课三个表,它们的定义分别为: 学生( 学生号 char(7),姓名char(6),性别char(2),出生日期 datetime,专业char(10),年级int) 课程( 课程号 char(4),课程名char(10),课程学分 int) 选课( 学生号 char(7),课程号char(4),成绩 int) 3.1.从商品库中查询出品牌为熊猫或春兰的所有商品的商品代号、分类名、产地和品牌 3.2 从教学库中查询出学生号为@ s1的学生和学生号为@ s2的学生选修的共同课程的课程号 3.3 从教学库中查询出学生号为@ s1的学生所选修、而学生号为@ s2的学生没有选修的课程 3.4从教学库中查询出至少选修了姓名为@ m1学生所选课程中一门课的全部学生号。
4 设有职工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY),其属性分别表示职工号、姓名、年龄、性别、工资。为每个工资低于1000元的女职工加薪200元,试写出这个操作的SQL语句。 5. 设某工厂数据库中有两个基本表: 车间基本表:DEPT(DNO,DNAME,MGR_ENO),其属性分别表示车间编号、车间名和车间主任的职工号。 职工基本表:ERP(ENO,ENAME,AGE,SEX,SALARY,DNO),其属性分别表示职工号、姓名、年龄、性别、工资和所在车间的编号。 建立一个有关女车间主任的职工号和姓名的视图,其结构如下: VIEW6(ENO,ENAME)。试写出创建该视图VIEW6的SQL语句。 6 、设有一个工程供应数据库系统,包括如下四个关系模式:
供应商表S由供应商号、供应商名、状态、城市组成; 零件表P 由零件号、零件名、颜色、重量组成; 工程项目表J由项目号、项目名、城市组成; 供应情况表SPJ由供应商号、零件号、项目号、供应数量组成; (1)用SQL查询供应工程J1零件为红色的工程号JNO;(2分) (2)用SQL查询没有使用天津供应商生产的零件的工程号;(3分) 7、设有关系EMP(ENO,ENAME,SALARY,DNO),其中各属性的含义依次为职工号、姓名、工资和所在部门号,以及关系DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门号、部门名称、部门经理的职工号。
8、
|
代码如下:
1. insert into R values(25,"李明","男",21,"95031"); insert into R(No,NAME,CLASS) values(25,"李明","95031"); update R set name='王华' where No=10; update R set CLASS='95091' where CLASS='95101'; delete from R where No=20; delete from R where NAME like '王%'; 2. select A#,ANAME from A where WQTY<=100 or CITY='长沙'; 3. (1) select 商品表1.商品代号,商品表1.分类名,商品表2.产地,商品表2.品牌 from 商品表1,商品表2 where 商品表1.商品代号=商品表2.商品代号 and 商品表2.品牌='熊猫'or'春兰'; (2) 方法一: select 课程号 from 选课 where 学生号='@s1' and 课程号 in ( select 课程号 from 选课 where 学生号='@s2'; ); 方法二: select 选课1.课程号 from 选课 选课1,选课 选课2 where 选课1.课程号=选课2.课程号 and 选课1.学生号='@s1'and 选课2.学生号='@s2'; (3) select 课程.* from 课程 where 课程号 in ( select 课程号 from 选课 where 学生号='@s1' and 课程号 not in ( select 课程号 from选课 where 学生号='@s2' ) ); (4) select distinct 学生号 from 选课 where 课程号 in ( select 课程号 from 选课 where 学生号 = ( select 学生号 from学生 where 姓名='@ml' ) ); 4. update EMP set SALARY = SALARY+200 where SALARY<1000 and SEX = '女'; 5. create view VIEW6 as select DEPT.MGR_ENO,ERP.ENAME from DEPT,ERP where DEPT.MGR_ENO=ERP.ENO and ERP.SEX='女'; 6. (1) select from P,SPJ where P.PNO=SPJ.PNO and P.COLOR='红色' and SPJ.JNO='J1'; (2) select JNO from SPJ where PNO not in ( select SPJ.PNO from SPJ,J where SPJ.JNO=J.JNO and J.CITY = '天津' ); 7. (1) select DNO,avg(SALARY) from EMP group by DNO having SALARY>=600; (2) update EMP set SALARY = SALARY*1.1 where EMP.DNO = DEPT.DNO and DEPT.DNAME = '销售部' and EMP.SALARY<600; 8. (1) select R.B from R,S where R.A = S.A and S.C>50; (2) update R set R.B = 'b4' where R.A = S.A and S.C = 40; |