MySQL復(fù)雜查詢技巧與試題及答案分享_第1頁(yè)
MySQL復(fù)雜查詢技巧與試題及答案分享_第2頁(yè)
MySQL復(fù)雜查詢技巧與試題及答案分享_第3頁(yè)
MySQL復(fù)雜查詢技巧與試題及答案分享_第4頁(yè)
MySQL復(fù)雜查詢技巧與試題及答案分享_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

MySQL復(fù)雜查詢技巧與試題及答案分享姓名:____________________

一、單項(xiàng)選擇題(每題2分,共10題)

1.以下哪個(gè)SQL語(yǔ)句可以正確地查詢出員工表中年齡大于30歲的所有員工信息?

A.SELECT*FROMemployeeWHEREage>30

B.SELECT*FROMemployeeWHEREage>=30

C.SELECT*FROMemployeeWHEREage<30

D.SELECT*FROMemployeeWHEREage<=30

2.在MySQL中,如何使用LIKE操作符進(jìn)行模糊查詢?

A.SELECT*FROMtableWHEREcolumnLIKE'value%'

B.SELECT*FROMtableWHEREcolumnLIKE'%value%'

C.SELECT*FROMtableWHEREcolumnLIKE'%value'

D.SELECT*FROMtableWHEREcolumnLIKE'value'

3.以下哪個(gè)SQL語(yǔ)句可以正確地查詢出部門(mén)表中部門(mén)名稱(chēng)為“銷(xiāo)售部”的所有信息?

A.SELECT*FROMdepartmentWHEREname='銷(xiāo)售部'

B.SELECT*FROMdepartmentWHEREname='銷(xiāo)售部%'

C.SELECT*FROMdepartmentWHEREnameLIKE'銷(xiāo)售部'

D.SELECT*FROMdepartmentWHEREnameLIKE'%銷(xiāo)售部%'

4.在MySQL中,如何使用IN操作符進(jìn)行多值查詢?

A.SELECT*FROMtableWHEREcolumnIN(value1,value2,...)

B.SELECT*FROMtableWHEREcolumnIN(value1,value2,...),value1ANDvalue2

C.SELECT*FROMtableWHEREcolumnBETWEENvalue1ANDvalue2

D.SELECT*FROMtableWHEREcolumnLIKE(value1,value2,...)

5.以下哪個(gè)SQL語(yǔ)句可以正確地查詢出員工表中工資在5000到8000之間的所有員工信息?

A.SELECT*FROMemployeeWHEREsalaryBETWEEN5000AND8000

B.SELECT*FROMemployeeWHEREsalary>=5000ANDsalary<=8000

C.SELECT*FROMemployeeWHEREsalary>5000ANDsalary<8000

D.SELECT*FROMemployeeWHEREsalaryBETWEEN5000OR8000

6.在MySQL中,如何使用EXISTS操作符進(jìn)行存在性查詢?

A.SELECT*FROMtableWHEREEXISTS(SELECT*FROMtable2WHEREtable1.id=table2.id)

B.SELECT*FROMtableWHEREEXISTS(SELECT*FROMtable2WHEREtable1.id=table2.id)ANDtable1.id=table2.id

C.SELECT*FROMtableWHEREEXISTS(SELECT*FROMtable2WHEREtable1.id=table2.id)ORtable1.id=table2.id

D.SELECT*FROMtableWHEREEXISTS(SELECT*FROMtable2WHEREtable1.id=table2.id)ANDtable1.id=table2.idORtable1.id=table2.id

7.以下哪個(gè)SQL語(yǔ)句可以正確地查詢出員工表中性別為男且工資大于5000的所有員工信息?

A.SELECT*FROMemployeeWHEREgender='男'ANDsalary>5000

B.SELECT*FROMemployeeWHEREgender='男'ORsalary>5000

C.SELECT*FROMemployeeWHEREgender='男'ANDsalary<=5000

D.SELECT*FROMemployeeWHEREgender='男'ORsalary<=5000

8.在MySQL中,如何使用JOIN操作符進(jìn)行多表查詢?

A.SELECT*FROMtable1,table2WHEREtable1.id=table2.id

B.SELECT*FROMtable1INNERJOINtable2ONtable1.id=table2.id

C.SELECT*FROMtable1LEFTJOINtable2ONtable1.id=table2.id

D.SELECT*FROMtable1RIGHTJOINtable2ONtable1.id=table2.id

9.以下哪個(gè)SQL語(yǔ)句可以正確地查詢出員工表中部門(mén)名稱(chēng)為“銷(xiāo)售部”或“市場(chǎng)部”的所有員工信息?

A.SELECT*FROMemployeeWHEREdepartment='銷(xiāo)售部'ORdepartment='市場(chǎng)部'

B.SELECT*FROMemployeeWHEREdepartmentIN('銷(xiāo)售部','市場(chǎng)部')

C.SELECT*FROMemployeeWHEREdepartment='銷(xiāo)售部'ANDdepartment='市場(chǎng)部'

D.SELECT*FROMemployeeWHEREdepartmentLIKE'銷(xiāo)售部'ORdepartmentLIKE'市場(chǎng)部'

10.在MySQL中,如何使用GROUPBY操作符進(jìn)行分組查詢?

A.SELECT*FROMtableGROUPBYcolumn

B.SELECTcolumnFROMtableGROUPBYcolumn

C.SELECT*FROMtableGROUPBYcolumn,column

D.SELECTcolumnFROMtableGROUPBYcolumn,columnORDERBYcolumn

二、多項(xiàng)選擇題(每題3分,共10題)

1.在MySQL中,以下哪些函數(shù)可以用于字符串處理?

A.CONCAT()

B.UPPER()

C.LOWER()

D.SUBSTRING()

E.REPLACE()

2.以下哪些SQL語(yǔ)句可以用于刪除表中的記錄?

A.DELETEFROMtableWHEREcondition

B.TRUNCATETABLEtable

C.DROPTABLEtable

D.ALTERTABLEtable

E.DELETEFROMtable1,table2WHEREtable1.id=table2.id

3.在MySQL中,以下哪些操作符可以用于日期和時(shí)間處理?

A.CURDATE()

B.NOW()

C.YEAR()

D.MONTH()

E.DAY()

4.以下哪些函數(shù)可以用于數(shù)學(xué)計(jì)算?

A.ABS()

B.CEIL()

C.FLOOR()

D.MOD()

E.RAND()

5.在MySQL中,以下哪些聚合函數(shù)可以用于對(duì)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)?

A.SUM()

B.AVG()

C.COUNT()

D.MAX()

E.MIN()

6.以下哪些SQL語(yǔ)句可以用于更新表中的記錄?

A.UPDATEtableSETcolumn=valueWHEREcondition

B.INSERTINTOtable(column1,column2)VALUES(value1,value2)

C.DELETEFROMtableWHEREcondition

D.REPLACEINTOtable(column1,column2)VALUES(value1,value2)

E.TRUNCATETABLEtable

7.在MySQL中,以下哪些操作符可以用于比較操作?

A.>

B.<

C.=

D.>=

E.<=

8.以下哪些函數(shù)可以用于獲取數(shù)據(jù)庫(kù)的版本信息?

A.VERSION()

B.DATABASE()

C.USER()

D.CURRENT_DATE()

E.NOW()

9.在MySQL中,以下哪些數(shù)據(jù)類(lèi)型可以用于存儲(chǔ)日期和時(shí)間?

A.DATE

B.TIME

C.DATETIME

D.TIMESTAMP

E.YEAR()

10.以下哪些SQL語(yǔ)句可以用于創(chuàng)建視圖?

A.CREATEVIEWview_nameASSELECTcolumn1,column2FROMtable_name

B.SELECTcolumn1,column2INTOview_nameFROMtable_name

C.INSERTINTOview_nameSELECTcolumn1,column2FROMtable_name

D.CREATEVIEWview_nameASSELECT*FROMtable_name

E.SELECT*INTOview_nameFROMtable_name

三、判斷題(每題2分,共10題)

1.在MySQL中,SELECT語(yǔ)句的ORDERBY子句可以用于對(duì)查詢結(jié)果進(jìn)行排序。()

2.使用LIKE操作符時(shí),通配符'_'表示任意單個(gè)字符。()

3.在MySQL中,可以使用GROUPBY子句對(duì)查詢結(jié)果進(jìn)行分組,但不能使用WHERE子句。()

4.使用JOIN操作符時(shí),INNERJOIN和LEFTJOIN是等價(jià)的。()

5.在MySQL中,可以使用UNION操作符將兩個(gè)SELECT語(yǔ)句的結(jié)果合并為一個(gè)結(jié)果集。()

6.在MySQL中,可以使用DISTINCT關(guān)鍵字去除查詢結(jié)果中的重復(fù)行。()

7.使用BETWEEN操作符時(shí),包含等于操作,即BETWEENaANDb包含a和b。()

8.在MySQL中,可以使用LIKE操作符進(jìn)行多列的模糊查詢。()

9.在MySQL中,可以使用NOTEXISTS操作符來(lái)查詢不存在于子查詢中的記錄。()

10.在MySQL中,可以使用ORDERBY子句對(duì)查詢結(jié)果進(jìn)行分組。()

四、簡(jiǎn)答題(每題5分,共6題)

1.簡(jiǎn)述MySQL中JOIN操作符的幾種類(lèi)型及其區(qū)別。

2.解釋MySQL中GROUPBY和HAVING子句的區(qū)別。

3.描述如何使用子查詢?cè)贛ySQL中實(shí)現(xiàn)復(fù)雜查詢。

4.列舉三種常見(jiàn)的字符串處理函數(shù),并簡(jiǎn)要說(shuō)明它們的功能。

5.說(shuō)明如何使用正則表達(dá)式在MySQL中進(jìn)行模糊查詢。

6.簡(jiǎn)要介紹MySQL中索引的作用及其對(duì)查詢性能的影響。

試卷答案如下

一、單項(xiàng)選擇題

1.A

解析思路:查詢年齡大于30歲的員工,使用比較操作符>,故選A。

2.A

解析思路:LIKE操作符用于模糊查詢,'value%'表示以value開(kāi)頭的字符串,故選A。

3.A

解析思路:查詢部門(mén)名稱(chēng)為“銷(xiāo)售部”的記錄,使用比較操作符=,故選A。

4.A

解析思路:IN操作符用于多值查詢,可以指定多個(gè)值,故選A。

5.A

解析思路:查詢工資在5000到8000之間的記錄,使用BETWEEN操作符,故選A。

6.A

解析思路:EXISTS操作符用于檢查子查詢中是否有結(jié)果,故選A。

7.A

解析思路:查詢性別為男且工資大于5000的記錄,使用AND操作符,故選A。

8.B

解析思路:JOIN操作符用于多表查詢,INNERJOIN表示內(nèi)連接,故選B。

9.B

解析思路:查詢部門(mén)名稱(chēng)為“銷(xiāo)售部”或“市場(chǎng)部”的記錄,使用IN操作符,故選B。

10.B

解析思路:GROUPBY子句用于對(duì)結(jié)果進(jìn)行分組,故選B。

二、多項(xiàng)選擇題

1.A,B,C,D,E

解析思路:這些函數(shù)都是MySQL中的字符串處理函數(shù),故全選。

2.A,B

解析思路:DELETE用于刪除記錄,TRUNCATE用于刪除表,故選A和B。

3.A,B,C,D

解析思路:這些函數(shù)都是MySQL中的日期和時(shí)間處理函數(shù),故全選。

4.A,B,C,D,E

解析思路:這些函數(shù)都是MySQL中的數(shù)學(xué)計(jì)算函數(shù),故全選。

5.A,B,C,D,E

解析思路:這些函數(shù)都是MySQL中的聚合函數(shù),故全選。

6.A,B

解析思路:UPDATE用于更新記錄,INSERTINTO用于插入記錄,故選A和B。

7.A,B,C,D,E

解析思路:這些操作符都是MySQL中的比較操作符,故全選。

8.A

解析思路:VERSION()函數(shù)用于獲取數(shù)據(jù)庫(kù)版本信息,故選A。

9.A,B,C,D,E

解析思路:這些數(shù)據(jù)類(lèi)型都是MySQL中的日期和時(shí)間數(shù)據(jù)類(lèi)型,故全選。

10.A,D

解析思路:CREATEVIEW用于創(chuàng)建視圖,SELECT*INTO用于將結(jié)果插入到視圖中,故選A和D。

三、判斷題

1.對(duì)

解析思路:ORDERBY子句用于對(duì)查詢結(jié)果進(jìn)行排序,故正確。

2.錯(cuò)

解析思路:LIKE操作符的通配符'_'表示任意單個(gè)字符,故錯(cuò)誤。

3.錯(cuò)

解析思路:GROUPBY子句用于對(duì)結(jié)果進(jìn)行分組,WHERE子句可以與GROUPBY一起使用,故錯(cuò)誤。

4.錯(cuò)

解析思路:INNERJOIN和LEFTJOIN不是等價(jià)的,LEFTJOIN包含左表的所有記錄,故錯(cuò)誤。

5.對(duì)

解析思路:UNION操作符用于合并兩個(gè)SELECT語(yǔ)句的結(jié)果,故正確。

6.對(duì)

解析思路:DISTINCT關(guān)鍵字用于去除查詢結(jié)果中的重復(fù)行,故正確。

7.對(duì)

解析思路:BETWEEN操作符包含等于操作,故正確。

8.錯(cuò)

解析思路:LIKE操作符不能用于多列的模糊查詢,故錯(cuò)誤。

9.對(duì)

解析思路:NOTEXISTS操作符用于查詢不存在于子查詢中的記錄,故正確。

10.錯(cuò)

解析思路:ORDERBY子句用于對(duì)查詢結(jié)果進(jìn)行排序,不能用于分組,故錯(cuò)誤。

四、簡(jiǎn)答題

1.MySQL中JOIN操作符的幾種類(lèi)型及其區(qū)別:

-INNERJOIN:返回兩個(gè)表中匹配的行。

-LEFTJOIN(LEFTOUTERJOIN):返回左表的所有行,即使右表中沒(méi)有匹配的行。

-RIGHTJOIN(RIGHTOUTERJOIN):返回右表的所有行,即使左表中沒(méi)有匹配的行。

-FULLJOIN(FULLOUTERJOIN):

溫馨提示

  • 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)論