【正文】
教師所授課程的課程號和成績(按課程號排序)。Select , 成績 from 教師,課程,選課 where 教師姓名like ‘王%’ And = and = order by 課程號(6)統(tǒng)計每門課程的學生選修人數(shù)(超過10人的課程才統(tǒng)計)。要求顯示課程號和人數(shù),查詢結果按人數(shù)降序排列。 Select 課程號 ,count(學號) 人數(shù) from 選課 group by課程號 having count(*)10 order by 人數(shù) desc(7) 檢索所有姓“李”的學生的姓名和年齡Select 學生姓名,年齡 from 學生 where 學生姓名 like ‘李%’(8)求男生的最高成績 Select max(成績) from 選課 where 學號 in (select 學號 from 學生 Where 性別=’男’)已知有關系:倉庫(倉庫號,城市,面積) 職工(倉庫號,職工號,工資) 訂購單(職工號,供應商號,訂購單號,訂購日期) 供應商(供應商號,供應商名,地址)(1)創(chuàng)建訂購單表,要求:數(shù)據(jù)類型及長度自定義,并指定其主碼和外碼Create table 訂購單表(職工號 char(10) foreign key references職工,供應商號 char(10) foreign key references供應商,訂購單號 char(10) primary key,訂購日期 datetime)(2)修改職工表,增加一個職工名(可變長字符型,最長為20)字段Alter 職工表 add 職工名 varchar(20)(3)向訂購單表中增加一條記錄,記錄值為:(’ZG0001’,‘GY0001’, ‘DD0001’,‘2006/06/12’)Insert into 訂購單表 values (’ZG0001‘,‘GY0001’, ‘DD0001’,‘2006/06/12’)(4)給低于所有職工平均工資的職工提高10%的工資。UPDATE 職工 SET 工資=工資* WHERE 工資 (SELECT AVG(工資) FROM 職工)(5)刪除所有目前沒有任何訂購單的供應商。DELETE FROM 供應商 WHERE 供應商號 NOT IN(SELECT 供應商號 FROM 訂購單)(6)將職工表的查詢權授給USER用戶,并允許其轉授給其他人Grant select on職工表 to USER with grant option (7)檢索出向供應商S3發(fā)過訂購單的職工的職工號和倉庫號。SELECT 職工號,倉庫號 FROM 職工 WHERE 職工號 IN( SELECT 職工號 FROM 訂購單 WHERE 供應商號=’S3’ )(8)檢索出目前沒有任何訂購單的供應商信息。SELECT * FROM 供應商 WHERE NOT EXISTS( SELECT * FROM 訂購單 WHERE 供應商號= )(9)檢索出和職工EE3都有聯(lián)系的北京的供應商信息。SELECT * FROM 供應商 WHERE 供應商號 IN( SELECT 供應商號 FROM 訂購單 WHERE 職工號=’E1’ )AND 供應商號 IN( SELECT 供應商號 FROM 訂購單 WHERE 職工號=’E3’ )(10)檢索出目前和華通電子公司有業(yè)務聯(lián)系的每個職工的工資。SELECT 職工號,工資 FROM 職工 WHERE 職工號 IN(SELECT 職工號 FROM 訂購單 WHERE 供應商號 IN(SELECT 供應商號 FROM 供應商 WHERE 供應商名=’華通電子公司’))(11) 檢索出與工資在1220元以下的職工沒有聯(lián)系的供應商的名稱。SELECT 供應商名 FROM 供應商 WHERE 供應商號 IN(SELECT 供應商號 FROM 訂購單 WHERE 職工號 NOT IN(SELECT 職工號 FROM 職工 WHERE 工資 1220))(12) 檢索出向S4供應商發(fā)出訂購單的倉庫所在的城市。SELECT 城市 FROM 倉庫 WHERE 倉庫號 IN(SELECT 倉庫號 FROM 職工 WHERE 職工號 IN(SELECT 職工號 FROM 訂購單 WHERE 供應商號=’S4’))(13)檢索出在上海工作并且向S6供應商發(fā)出了訂購單的職工號。SELECT 職工號 FROM 職工 WHERE 倉庫號 IN(SELECT 倉庫號 FROM 倉庫 WHERE 城市=’上海’) AND 職工號 IN(SELECT 職工號 FROM 訂購單 WHERE 供應商號=’S6’))(14)檢索出在廣州工作并且只向S6供應商發(fā)出了訂購單的職工號。SELECT 職工號 FROM 職工 WHERE 倉庫號 IN(SELECT 倉庫號 FROM 倉庫 WHERE 城市=’廣州’) AND 職工號 IN(SELECT 職工號 FROM 訂購單 WHERE 供應商號=’S6’) AND 職工號 NOT IN (SELECT 職工號 FROM 訂購單 WHERE 供應商號!=’S6’)(15)檢索出由工資多于1230元的職工向北京的供應商發(fā)出的訂購單號。SELECT 訂購單號 FROM 訂購單 WHERE 職工號 IN(SELECT 職工號 FROM 職工 WHERE 工資1230) AND 供應商號 IN(SELECT 供應商號 FROM 供應商 WHERE 地址=’北京’)(16)檢索出有最大面積的倉庫信息。SELECT * FROM 倉庫 WHERE 面積=(SELECT MAX(面積) FROM 倉庫)(17)檢索出向S4供應商發(fā)出訂購單的那些倉庫的平均面積。SELECT AVG(面積) FROM 倉庫 WHERE 倉庫號 IN(SELECT 倉庫號 FROM 職工 WHERE 職工號 IN(SELECT 職工號 FROM 訂購單 WHERE 供應商號=’S4’))(18)檢索出每個城市的供應商個數(shù)。SELECT 地址,COUNT(*) FROM 供應商 GROUP BY 地址(19)檢索出和面積最小的倉庫有聯(lián)系的供應商的個數(shù)。SELECT COUNT(*) FROM 供應商 WHERE 供應商號 IN(SELECT 供應商號 FROM 訂購單 WHERE 職工號 IN(SELECT 職工號 FROM 職工 WHERE 倉庫號 IN(SELECT 倉庫號 FROM 倉庫 WHERE 面積=(SELECT MIN(面積) FROM 倉庫))))(20)插入一個新的供應商元組(S9,智通公司,沈陽)。INSERT INTO 供應商 VALUES(‘S9’,’智通公司’,’沈陽’)(21)刪除由在上海倉庫工作的職工發(fā)出的所有訂購單。DELETE FROM 訂購單 WHERE 職工號 IN(SELECT 職工號 FROM 職工 WHERE 倉庫號 IN(SELECT 倉庫號 FROM 倉庫 WHERE 城市=’上?!?