2025年sql考試試卷及答案_第1頁(yè)
2025年sql考試試卷及答案_第2頁(yè)
2025年sql考試試卷及答案_第3頁(yè)
2025年sql考試試卷及答案_第4頁(yè)
2025年sql考試試卷及答案_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

2025年sql考試試卷及答案一、單項(xiàng)選擇題(每題2分,共20分)1.以下哪項(xiàng)是SQL標(biāo)準(zhǔn)的主要制定組織?A.W3CB.ISO/IECC.IEEED.ECMA答案:B2.以下屬于數(shù)據(jù)操作語(yǔ)言(DML)的是?A.CREATETABLEB.ALTERVIEWC.UPDATESTUDENTD.GRANTPRIVILEGE答案:C3.關(guān)于主鍵(PRIMARYKEY)和唯一約束(UNIQUE)的描述,錯(cuò)誤的是?A.主鍵自動(dòng)創(chuàng)建唯一索引,唯一約束也會(huì)創(chuàng)建B.主鍵不允許NULL,唯一約束允許一個(gè)NULLC.一個(gè)表只能有一個(gè)主鍵,但可以有多個(gè)唯一約束D.主鍵用于標(biāo)識(shí)記錄唯一性,唯一約束用于非主鍵字段的唯一性答案:B(唯一約束允許NULL,但只能有一個(gè)NULL值)4.以下哪種索引類(lèi)型適合優(yōu)化范圍查詢(如WHEREscoreBETWEEN60AND90)?A.哈希索引B.B樹(shù)索引C.全文索引D.空間索引答案:B5.若表A有10條記錄,表B有5條記錄,執(zhí)行ALEFTJOINBONA.id=B.a_id后,最多可能返回多少條記錄?A.5B.10C.15D.50答案:B(左連接保留左表所有記錄,右表無(wú)匹配時(shí)補(bǔ)NULL)6.以下子查詢中,屬于相關(guān)子查詢的是?A.SELECTFROMempWHEREdept_idIN(SELECTidFROMdept)B.SELECTFROMempe1WHEREe1.salary>(SELECTAVG(salary)FROMempe2)C.SELECTFROMempeWHEREEXISTS(SELECT1FROMdeptdWHEREd.id=e.dept_idANDd.region='Asia')D.SELECTFROM(SELECTid,nameFROMemp)t答案:C(子查詢依賴外部查詢的e.dept_id)7.要將日期字段“order_date”格式化為“2025-03-15”的字符串,應(yīng)使用?A.DATE_FORMAT(order_date,'%Y-%m-%d')B.TO_CHAR(order_date,'YYYY-MM-DD')C.CONVERT(VARCHAR,order_date,23)D.以上均可(取決于數(shù)據(jù)庫(kù)類(lèi)型)答案:D(不同數(shù)據(jù)庫(kù)函數(shù)不同,如MySQL用DATE_FORMAT,Oracle用TO_CHAR,SQLServer用CONVERT)8.事務(wù)隔離級(jí)別“可重復(fù)讀”(REPEATABLEREAD)能解決以下哪個(gè)問(wèn)題?A.臟讀(DirtyRead)B.不可重復(fù)讀(Non-RepeatableRead)C.幻讀(PhantomRead)D.以上都是答案:B(可重復(fù)讀解決不可重復(fù)讀,但可能存在幻讀)9.窗口函數(shù)ROW_NUMBER()與RANK()的主要區(qū)別是?A.ROW_NUMBER()允許重復(fù)序號(hào),RANK()不允許B.ROW_NUMBER()不允許重復(fù)序號(hào),RANK()允許(相同值序號(hào)相同,后續(xù)序號(hào)跳躍)C.ROW_NUMBER()用于分組,RANK()用于排序D.無(wú)區(qū)別,可互換使用答案:B(如值10、10、20,RANK()為1、1、3,ROW_NUMBER()為1、2、3)10.存儲(chǔ)過(guò)程中定義輸入輸出參數(shù)時(shí),應(yīng)使用的關(guān)鍵字是?A.INOUTB.OUTC.IND.以上均可答案:D(IN輸入,OUT輸出,INOUT雙向)二、填空題(每空2分,共20分)1.統(tǒng)計(jì)某表記錄數(shù)時(shí),COUNT()與COUNT(列名)的區(qū)別是:COUNT()統(tǒng)計(jì)所有行(包括NULL),COUNT(列名)統(tǒng)計(jì)該列___的行。答案:非NULL2.左連接(LEFTJOIN)的語(yǔ)法中,若右表無(wú)匹配記錄,右表字段將顯示___。答案:NULL3.MySQL中,將字符串“2025-04-20”轉(zhuǎn)換為日期類(lèi)型的函數(shù)是___。答案:STR_TO_DATE('2025-04-20','%Y-%m-%d')4.子查詢中,EXISTS關(guān)鍵字通常用于判斷___是否存在符合條件的記錄。答案:子查詢5.窗口函數(shù)必須搭配___子句指定排序或分區(qū)。答案:OVER6.事務(wù)控制中,回滾操作的語(yǔ)句是___。答案:ROLLBACK7.約束中,用于限制字段值范圍的是___約束。答案:CHECK8.索引分為聚簇索引和非聚簇索引,其中___索引決定了表中數(shù)據(jù)的物理存儲(chǔ)順序。答案:聚簇9.視圖是___的虛擬表,其數(shù)據(jù)不實(shí)際存儲(chǔ)。答案:基于表或其他視圖10.SQLServer中創(chuàng)建存儲(chǔ)過(guò)程的關(guān)鍵字是___。答案:CREATEPROCEDURE三、簡(jiǎn)答題(每題6分,共30分)1.簡(jiǎn)述事務(wù)的ACID特性及其含義。答案:ACID是原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)的縮寫(xiě)。原子性指事務(wù)要么全部提交,要么全部回滾;一致性指事務(wù)執(zhí)行前后數(shù)據(jù)庫(kù)狀態(tài)保持合法;隔離性指多個(gè)事務(wù)并發(fā)執(zhí)行時(shí)互不干擾;持久性指事務(wù)提交后數(shù)據(jù)永久保存。2.視圖的主要作用有哪些?答案:(1)簡(jiǎn)化復(fù)雜查詢:將多表連接或復(fù)雜條件封裝為視圖,用戶直接調(diào)用;(2)數(shù)據(jù)安全:通過(guò)視圖限制用戶訪問(wèn)的字段或行,隱藏敏感數(shù)據(jù);(3)邏輯獨(dú)立性:表結(jié)構(gòu)變更時(shí),只需修改視圖定義,不影響依賴視圖的應(yīng)用。3.索引的優(yōu)缺點(diǎn)是什么?答案:優(yōu)點(diǎn):加速查詢速度,尤其是對(duì)WHERE、JOIN、ORDERBY的條件;缺點(diǎn):增加存儲(chǔ)開(kāi)銷(xiāo)(索引需額外空間);降低寫(xiě)操作(INSERT/UPDATE/DELETE)性能(需同步更新索引);維護(hù)成本高(索引過(guò)多可能影響整體性能)。4.內(nèi)連接(INNERJOIN)與外連接(OUTERJOIN)的核心區(qū)別是什么?舉例說(shuō)明左連接(LEFTJOIN)的結(jié)果。答案:內(nèi)連接僅返回兩表中滿足連接條件的記錄;外連接返回滿足條件的記錄,同時(shí)保留某一側(cè)(左/右/全)表中不滿足條件的記錄(補(bǔ)NULL)。例如,左連接ALEFTJOINB會(huì)返回A的所有記錄,B中無(wú)匹配的字段顯示NULL。5.窗口函數(shù)與普通聚合函數(shù)(如SUM、AVG)的主要區(qū)別是什么?答案:聚合函數(shù)會(huì)將多行數(shù)據(jù)聚合為一行(需配合GROUPBY),結(jié)果行數(shù)減少;窗口函數(shù)為每行數(shù)據(jù)計(jì)算一個(gè)聚合值(不減少行數(shù)),通過(guò)OVER子句指定分區(qū)(PARTITIONBY)和排序(ORDERBY),保留原始行的完整性。四、編程題(共30分)(注:以下題目基于學(xué)生選課系統(tǒng),表結(jié)構(gòu)如下:)學(xué)生表(student):s_id(學(xué)號(hào),主鍵),s_name(姓名),s_sex(性別),s_dept(院系),enroll_date(入學(xué)時(shí)間)課程表(course):c_id(課程號(hào),主鍵),c_name(課程名),credit(學(xué)分)選課表(sc):s_id(學(xué)號(hào)),c_id(課程號(hào)),score(成績(jī)),select_time(選課時(shí)間),主鍵(s_id,c_id)1.(5分)查詢“計(jì)算機(jī)科學(xué)與技術(shù)”院系2023級(jí)(入學(xué)時(shí)間在2023-09-01至2023-09-30之間)女生的“高等數(shù)學(xué)”課程成績(jī),結(jié)果按成績(jī)降序排列。答案:SELECTs.s_name,sc.scoreFROMstudentsJOINscONs.s_id=sc.s_idJOINcoursecONsc.c_id=c.c_idWHEREs.s_dept='計(jì)算機(jī)科學(xué)與技術(shù)'ANDs.enroll_dateBETWEEN'2023-09-01'AND'2023-09-30'ANDs.s_sex='女'ANDc.c_name='高等數(shù)學(xué)'ORDERBYsc.scoreDESC;2.(6分)使用窗口函數(shù),查詢每個(gè)學(xué)生所有選修課程的成績(jī),并按課程號(hào)(c_id)對(duì)該學(xué)生的課程成績(jī)進(jìn)行排名(成績(jī)?cè)礁吲琶角?,相同成?jī)并列)。答案:SELECTs_id,c_id,score,RANK()OVER(PARTITIONBYs_idORDERBYscoreDESC)ASrankFROMsc;3.(7分)學(xué)院部門(mén)存在層級(jí)關(guān)系(如:學(xué)院→系→教研室),用CTE遞歸查詢“信息工程學(xué)院”下的所有二級(jí)部門(mén)(系)和三級(jí)部門(mén)(教研室)。(假設(shè)部門(mén)表dept結(jié)構(gòu):dept_id,dept_name,parent_id)答案:WITHRECURSIVEdept_treeAS(SELECTdept_id,dept_name,parent_id,1ASlevelFROMdeptWHEREdept_name='信息工程學(xué)院'UNIONALLSELECTd.dept_id,d.dept_name,d.parent_id,dt.level+1FROMdeptdJOINdept_treedtONd.parent_id=dt.dept_id)SELECTdept_name,levelFROMdept_treeWHERElevelIN(2,3);4.(6分)刪除“選課表(sc)”中同一學(xué)生(s_id)選修同一課程(c_id)的重復(fù)記錄,僅保留最近一次選課(select_time最大)的記錄。答案:DELETEFROMscWHERE(s_id,c_id,select_time)NOTIN(SELECTs_id,c_id,MAX(select_time)FROMscGROUPBYs_id,c_id);5.(6分)統(tǒng)計(jì)“數(shù)據(jù)庫(kù)原理”課程的成績(jī)分布,要求輸出:分?jǐn)?shù)段(如“90-100”“80-89”等)、人數(shù)。答案:SELECTCASEWHENscore>=90THEN'90-100'WHENscore>=80THEN'80-

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論