數(shù)據(jù)庫(kù)工程師面試題_第1頁(yè)
數(shù)據(jù)庫(kù)工程師面試題_第2頁(yè)
數(shù)據(jù)庫(kù)工程師面試題_第3頁(yè)
數(shù)據(jù)庫(kù)工程師面試題_第4頁(yè)
數(shù)據(jù)庫(kù)工程師面試題_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上數(shù)據(jù)庫(kù)工程師面試題Lyven SQL數(shù)據(jù)庫(kù)開發(fā) 5月14日(點(diǎn)擊上方藍(lán)色字,可快速關(guān)注我們哦)選擇題:(每空分共18分)1、在MS SQL Server中,用來顯示數(shù)據(jù)庫(kù)信息的系統(tǒng)存儲(chǔ)過程是( )A sp_ dbhelpB sp_ dbC sp_ helpD sp_ helpdb 2、SQL語言中,刪除一個(gè)表的命令是( )A DELETEB DROPC CLEARD REMORE 3、關(guān)系數(shù)據(jù)庫(kù)中,主鍵是(_)A、為標(biāo)識(shí)表中唯一的實(shí)體B、創(chuàng)建唯一的索引,允許空值C、只允許以表中第一字段建立D、允許有多個(gè)主鍵的 4、在Transact-SQL語法中,SELECT語句的完

2、整語法較復(fù)雜,但至少包括的部分(1_),使用關(guān)鍵字(2_)可以把重復(fù)行屏蔽,將多個(gè)查詢結(jié)果返回一個(gè)結(jié)果集合的運(yùn)算符是(3_),如果在SELECT語句中使用聚合函數(shù)時(shí),一定在后面使用(4_)。 A、SELECT,INTO B、SELECT,F(xiàn)ROM C、SELECT,GROUP D、僅SELECT A、DISTINCT B、UNION C、ALL C、TOP A、JOIN B、UNION C、INTO C、LIKE A、GROUP BY B、COMPUTE BY C、HAVING D、COMPUTE 5、語句DBCC SHRINKDATABASE (Sample, 25)中的25表示的意思是A、

3、25MB、剩余占整個(gè)空間的25%C、已用空間占整個(gè)空間的25%D、以上都不對(duì) 6、你是一個(gè)保險(xiǎn)公司的數(shù)據(jù)庫(kù)開發(fā)人員,公司的保單信息存儲(chǔ)在SQL Server 2000數(shù)據(jù)庫(kù)中,你使用以下腳本建立了一個(gè)名為Policy的表:CREATE TABLE Policy(PolicyNumber int NOT NULL DEFAULT (0),InsuredLastName char (30) NOT NULL,InsuredFirstName char (20) NOT NULL,InsuredBirthDate datetime NOT NULL,PolicyDate datetime NOT N

4、ULL,FaceAmount money NOT NULL,CONSTRAINT PK_Policy PRIMARY KEY (PolicyNumber)每次公司銷售出一份保單,Policy表中就增加一條記錄,并賦予其一個(gè)新的保單號(hào),你將怎么做? a.建立一個(gè)INSTEAD OF INSERT觸發(fā)器來產(chǎn)生一個(gè)新的保單號(hào),并將這個(gè)保單號(hào)插入數(shù)據(jù)表中。b.建立一個(gè)INSTEAD OF UPDATE觸發(fā)器來產(chǎn)生一個(gè)新的保單號(hào),并將這個(gè)保單號(hào)插入數(shù)據(jù)表中。c.建立一個(gè)AFTER UPDATE觸發(fā)器來產(chǎn)生一個(gè)新的保單號(hào),并將這個(gè)保單號(hào)插入數(shù)據(jù)表中。d.用AFTER UPDATE觸發(fā)器替代DEFAULT約

5、束條件產(chǎn)生一個(gè)新的保單號(hào),并將這個(gè)保單號(hào)插入數(shù)據(jù)表中。 、在SQL語言中,如果要建立一個(gè)工資表包含職工號(hào),姓名,職稱。工資等字段。若要保證工資字段的取值不低于800元,最合適的實(shí)現(xiàn)方法是:A。在創(chuàng)建工資表時(shí)為”工資“字段建立缺省B。在創(chuàng)建工資表時(shí)為”工資“字段建立檢查約束C。在工資表建立一個(gè)觸發(fā)器D。為工資表數(shù)據(jù)輸入編寫一個(gè)程序進(jìn)行控制、Select 語句中用來連接字符串的符號(hào)是_.A. “+” B. “&” C.“|” D.“|” 、你是一個(gè)出版公司的數(shù)據(jù)庫(kù)開發(fā)人員,對(duì)特定的書名的每天的銷售情況建立了如下的存儲(chǔ)過程:CREATE PROCEDURE get_sales_for_tit

6、letitle varchar(80), ytd_sales int OUTPUTASSELECT ytd_sales = ytd_salesFROM titlesWHERE title = titleIF ROWCOUNT = 0RETURN(-1)ELSERETURN(0)另外建立了一個(gè)腳本執(zhí)行這個(gè)存儲(chǔ)過程,如果執(zhí)行成功,將返回對(duì)應(yīng)于書名的每天的銷售情況的報(bào)表,如果執(zhí)行失敗,將返回“No Sales Found”,怎樣建立這個(gè)腳本? . DECLARE retval intDECLARE ytd intEXEC get_sales_for_title Net Etiquette, ytdI

7、F retval < 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GO . DECLARE retval intDECLARE ytd intEXEC get_sales_for_title Net Etiquette, ytd OUTPUTIF retval < 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GO . DECLARE retval intDECLARE ytd intEXEC get_sales_for_ti

8、tle Net Etiquette,retval OUTPUTIF retval < 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GO . DECLARE retval intDECLARE ytd intEXEC retval = get_sales_for_title Net Etiquette, ytd OUTPUTIF retval < 0PRINT No sales foundELSEPRINT Year to date sales: + STR (ytd)GO簡(jiǎn)答題:(共分)1、(分)使用一

9、條SQL語句找到重復(fù)的值及重復(fù)的次數(shù):有一數(shù)據(jù)表ZD_ks,其中有字段BM,MC等,請(qǐng)查詢出在ZD_ks中BM有重復(fù)的值及重復(fù)的次數(shù),沒有的不要列出。如下表:BM DUPCOUNT001 3002 2 2、描述(5分)表1 student 學(xué)生信息表ID int 學(xué)生編號(hào)Name varchar 學(xué)生姓名Sex bit 性別(男0女1)Class int 班級(jí)編號(hào) 表2 schedule 課程信息表ID int 課程編號(hào)Name varchar 課程名稱 表3 Grade 成績(jī)信息表ID int 自動(dòng)編號(hào)UID int 學(xué)生編號(hào)SID int 課程編號(hào)Num int 考試成績(jī) (a)求各班的總

10、人數(shù)(分)(b)求1班女生和男生的平均成績(jī)(分)(c)各班"數(shù)據(jù)結(jié)構(gòu)"(課程名稱)不及格的人數(shù)(分) 、問題描述:(30分)本題用到下面三個(gè)關(guān)系表:CARD 借書卡。 CNO 卡號(hào),NAME 姓名,CLASS 班級(jí)BOOKS 圖書。 BNO 書號(hào),BNAME 書名,AUTHOR 作者,PRICE 單價(jià),QUANTITY 庫(kù)存冊(cè)數(shù)BORROW 借書記錄。 CNO 借書卡號(hào),BNO 書號(hào),RDATE 還書日期備注:限定每人每種書只能借一本;庫(kù)存冊(cè)數(shù)隨借書、還書而改變。要求實(shí)現(xiàn)如下15個(gè)處理: 1找出借書超過5本的讀者,輸出借書卡號(hào)及所借圖書冊(cè)數(shù)。(2分) 2查詢借閱了"

11、;水滸"一書的讀者,輸出姓名及班級(jí)。(3分) 3查詢過期未還圖書,輸出借閱者(卡號(hào))、書號(hào)及還書日期。(3分) 4查詢書名包括"網(wǎng)絡(luò)"關(guān)鍵詞的圖書,輸出書號(hào)、書名、作者。(2分) 5查詢現(xiàn)有圖書中價(jià)格最高的圖書,輸出書名及作者。(2分) 6查詢當(dāng)前借了"計(jì)算方法"但沒有借"計(jì)算方法習(xí)題集"的讀者,輸出其借書卡號(hào),并按卡號(hào)降序排序輸出。(4分) 7將"C01"班同學(xué)所借圖書的還期都延長(zhǎng)一周。(2分) 8從BOOKS表中刪除當(dāng)前無人借閱的圖書記錄。(2分) 9在BORROW表上建立一個(gè)觸發(fā)器,完成如下功能:如

12、果讀者借閱的書名是"數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用",就將該讀者的借閱記錄保存在BORROW_SAVE表中(注ORROW_SAVE表結(jié)構(gòu)同BORROW表)。(4分) 10建立一個(gè)視圖,顯示"力01"班學(xué)生的借書信息(只要求顯示姓名和書名)。(3分) 11查詢當(dāng)前同時(shí)借有"計(jì)算方法"和"組合數(shù)學(xué)"兩本書的讀者,輸出其借書卡號(hào),并按卡號(hào)升序排序輸出。(3分)答案(僅供)選擇題1、D 2、 3、A4 、B,A,B,A5、B 、 、B 8、 、 簡(jiǎn)答題、create table ZD_ks(BM varchar(10),mc varch

13、ar(10),age int)insert into ZD_ks(bm,mc,age) values('001','張三',1)insert into ZD_ks(bm,mc,age) values('001','李四',2)insert into ZD_ks(bm,mc,age) values('001','王五',3)insert into ZD_ks(bm,mc,age) values('002','趙六',1)insert into ZD_ks(bm,mc,a

14、ge) values('002','錢七',2)insert into ZD_ks(bm,mc,age) values('003','孫八',1)goselect BM,count(*) as DUPCOUNT from zd_ks group by bm having count(*) > 1drop table zd_ks 、(1)select Class,count(1) as num from student group by Class (2)select S.Sex,avg(G.Num) as Numfrom s

15、tudent S,Grade Gwhere S.ID=G.ID and S.Class=1group by S.Sex (3)select S.Class,count(1) as numfrom student S,Grade G,schedule SCwhere S.ID=G.ID and G.SID =Sc.ID and SC.Name='數(shù)據(jù)結(jié)構(gòu)' and Sc.Num<60group by S.Class 、1. 找出借書超過5本的讀者,輸出借書卡號(hào)及所借圖書冊(cè)數(shù)-實(shí)現(xiàn)代碼:SELECT CNO,借圖書冊(cè)數(shù)=COUNT(*)FROM BORROWGROUP BY

16、CNOHAVING COUNT(*)>5 2. 查詢借閱了"水滸"一書的讀者,輸出姓名及班級(jí)-實(shí)現(xiàn)代碼:SELECT * FROM CARD cWHERE EXISTS( SELECT * FROM BORROW a,BOOKS b WHERE a.BNO=b.BNO AND b.BNAME=N'水滸' AND a.CNO=c.CNO) 3. 查詢過期未還圖書,輸出借閱者(卡號(hào))、書號(hào)及還書日期-實(shí)現(xiàn)代碼:SELECT * FROM BORROWWHERE RDATE<getdate()< span=""><

17、/getdate()<> 4. 查詢書名包括"網(wǎng)絡(luò)"關(guān)鍵詞的圖書,輸出書號(hào)、書名、作者-實(shí)現(xiàn)代碼:SELECT BNO,BNAME,AUTHOR FROM BOOKSWHERE BNAME LIKE N'%網(wǎng)絡(luò)%' 5. 查詢現(xiàn)有圖書中價(jià)格最高的圖書,輸出書名及作者-實(shí)現(xiàn)代碼:SELECT BNO,BNAME,AUTHOR FROM BOOKSWHERE PRICE=( SELECT MAX(PRICE) FROM BOOKS) 6. 查詢當(dāng)前借了"計(jì)算方法"但沒有借"計(jì)算方法習(xí)題集"的讀者,輸出其借書卡號(hào)

18、,并按卡號(hào)降序排序輸出-實(shí)現(xiàn)代碼:SELECT a.CNOFROM BORROW a,BOOKS bWHERE a.BNO=b.BNO AND b.BNAME=N'計(jì)算方法' AND NOT EXISTS( SELECT * FROM BORROW aa,BOOKS bb WHERE aa.BNO=bb.BNO AND bb.BNAME=N'計(jì)算方法習(xí)題集' AND aa.CNO=a.CNO)ORDER BY a.CNO DESC 7. 將"C01"班同學(xué)所借圖書的還期都延長(zhǎng)一周-實(shí)現(xiàn)代碼:UPDATE b SET RDATE=DATEADD(Day,7,b.RDATE)FROM CARD a,BORROW bWHERE a.CNO=b.CNO AND a.CLASS=N'C01' 8. 從BOOKS表中刪除當(dāng)前無人借閱的圖書記錄-實(shí)現(xiàn)代碼:DELETE A FROM BOOKS aWHERE NOT EXISTS( SELECT * FROM BORROW WHERE BNO=a.BNO) 9. 在BORROW表上建立一個(gè)觸發(fā)器,完成如下功能:如果讀者借閱的書名是"數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用",就將該讀者的借閱記錄保存在BOR

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論