Oracle考试笔试题库-.docx
ORACLE选择题1 .数据字典在SGA的哪一个组件中缓存?()(选择一项)a)数据库高速缓冲区b)共享c) PGAd)重做日志缓冲区2 .如果存储过程的参数类型为OUT,那么调用时传递的参数应该为()(选择一项)a)常量b)表达式c)变量d)都可以3 .下列有关存储过程的特点说法错误的是()(选择一项)a)存储过程不能将值传回调用的主程序b)存储过程是一个命名的模块c)编译的存储过程存放在数据库中d) 一个存储过程可以调用另一个存储过程4 .下列有关函数的特点说法错误的是()(选择一项)a)函数必须定义返回类型b)函数参数的类型可以是OUTc)在函数体内可以多次使用RETURN语句d)函数的调用应使用EXECUTE命令5 .下列有关包的使用说法错误的是()(选择一项)a)在不同的包内模块可以重名b)包的私有过程不能被外部程序调用c)包体中的过程和函数必须在包头部分说明d)必须先创建包头,然后创建包体6 .以下需求中哪个需要用分组函数来实现?()(选择一项)a)把ORDER表中的定单时间显示成'DDMONYYYY,格式b)把字符串,JANUARY28,2000,转换成日期格式c)显示PRODUCT表中不同种类产品的COST的和d)把PRODUCT表中的DESCRIPTlON列用小写形式显示7 .用以下的SQL语句查询数据库:SELECTidnumber"PartNumber”,SUM(price*quantity)TOTAL,descriptionFROMinventoryWHEREprice>5.00ORDERBY"PartNumber”,3;哪一句会产生错误?()(选择一项)a) FROMINVENTORYb) WHEREPRICE>5.00c) ORDERBY"PARTNUMBER”,3;d) SELECTid_number"PartNumberz,SUM(price*quantity)TOTAL,description8 .看下面代码,正确的是()(选择一项)a) DECLAREDBMS_OUTPUT.PUTJJNE('定义部分');BEGINDBMSJ)UTPUT.PUT一LlNEe语句部分');END;b) BEGINNUMNUMBER:=100;DBMS.OUTPUT.PUTJJNE(,NUM的值为:'IlNUM);END;c) DECLARENUMNUMBERr=100;BEGINNUM:=NuM+NUM2;DBMSOUTPUT.PUTLlNECNUM的值为:'IlNUM);END;d) BEGINNUMNUMBER:=100;DECLARENUM:=NUM+NUM2;DBMSOUTPUT.PUT_LINE(,NUM的值为IlNUM);END;9 .()是OraCIe在启动期间用来标识物理文件和数据文件的二进制文件(选择一项)a)控制文件b)参数文件c)数据文件d)可执行文件10 .()进程主要职责是监控服务器进程和注册数据服务(选择一项)a) SMONb) PMONc) DBWRd) 1.GWR11 .在OraCIe中()是最小的存储空间(选择一项)a)区b)段c)块d)表空间12 .可以使用下面的()个数据字典查看当前数据库的表空间情况.(选择一项)a) dba_usersb) dba_tab_privsc) dbatabspacesd) user_tab_privs13 .下面是有关系统权限和对象权限的描述,正确的是()(选择一项)a)系统权限是针对某个对象的权限,对象权限不与数据库中的某个对象关联b)系统权限和对象权限都是针对某个对象操作的权限c)系统权限和对象权限都不与具体的对象关联d)系统权限不与数据库中的对象关联,对象权限是针对某个对象操作的权限14 .CREATETABLE语句用来创建()(选择一项)a)表b)视图c)用户d)函数15 .如果希果更新OraCle表authors中first_name列为非空,可以使用哪个语句()(选择一项)a) altertableauthorsaddfirst_namenotnullb) altertableauthorsmodifyfirstnamenotnullc) altertableauthorsalterfirstnamenotnulld) altertableauthorsdropfirst_namenotnull16 .下面是有关OraCIe主键约束的描述,正确的是()(选择一项)a)主键约束用于唯一的确定表中的每一行数据b)在一个比表中,最多只能有2个主键约束c)主键约束只能由一个列组成d)主键约束不能由一个单列组成17 .在OraCle系统中,可以使用()提交完成的事务(选择一项)a) commitb) rollbackc) savepointd) transaction18 .使用desc命令可以显示表的()信息(选择三项)a)列名称b)列长度c)列是否为空d)表名称19 .使用ShOW命令可以得到许有用的信息选些信息上要包括()(选择三项)a)SQL*Plus的环境设置b)表的结构c)创建PL/SQL代引的错误消息d)init.on参数20 .比较PageSiZe和IineSiZe两个命令的特点()(选择两项)a) PagCSiZC命令用于设置屏幕上每一页包含的行数b) linesize命令用于设置屏幕上每一行的字符数c) PageSiZe命令用于设置屏幕上每一行的字符数d) linesize命令用于设置屏幕上每一页包含的行数21 .ORACLE表达式NVL(PhOne,"0000-0000,)的含义是()(选择一项)a)当phone为字符串0000-0000时显示空值b)当phone为空值时显示0000-0000c)判断phone和字符串OOO(M)OOo是否相等d)将phone的全部内容替换为0000-000022 .在ORACLE中,当COl为()时,COI>any(5,10,28)为假(选择一项)a) 22b) 2c) 12d) 3223 .在ORACLE中,当COl为()时,col<all(5,10,28)为真(选择一项)a) 22b) 2c) 12d) 3224 .下面哪个ORACLE函数把字符串X的所有单词的首字母变成大写()(选择一项)a) initcapb) concatc) upperd) lower25 .在正则表达式中,Name0-93,5匹配的字符包括()(选择两项)a) Name888b) Name6666c) Name333333d) Name12326 .ORACLE使用哪个系统参数设置日期的格式()(选择一项)a) nls_languageb) nls_datec) nls_time_zoned) nlsdate_format27 .下列关于ORACLE的to_date函数和tohar函数,描述正确的两项是()(选择两项)a) to.char函数的作业是将字符串数据转换为日期数据b) todate函数的作业是讲字符串转换为日期c)tochar函数是将H期数据转换为字符数据d)todate函数是将日期数据转换为字符数据28 .ORACLE交集运算符是()(选择一项)a) intersectb) unionc) setd) minus29 .在ORACLE中,rank()函数和dense_rank()函数的差别是()(选择一项)a) rank函数和dense_rank函数都没有跳跃b) rank函数和dense_rank函数都有跳跃c) rank函数有跳跃dense.rank函数没有跳跃d) rank函数没有跳跃dense_rank函数有跳跃30 .如果希望执行某操作时,该操作不执行,而是执行另一个操作,那么可是使用什么方式来完成()(选择一项)a) before触发器b) after触发器c) insteadof触发器d) undo触发器31 .序列的两个属性是()(选择两项)a) currvalb) nowvalc) nextvald) preval32 .partitionbyIiSt(InSnid)子句的含义是()(选择一项)a)按msn_id列进行范围分区b)按msn_id列进行列表分区c)按msnid列进行复合分区d)按msn-id列进行散列分区33 .下列不属于ORACLE逻辑结构的是()(选择一项)a)区b)段c)数据文件d)数据块34,下列哪个ORACLE后台进程是数据写入进程()(选择一项)a) DBWRb) SERVICELOGc) 1.GWRd) SMON35 .在ORACLE中,下列哪个操作会导致用户可以连接到数据库,但无法创建表()(选择一项)a)仅授予了CoNNECT角色,没有授予RESoURSE角色b)没有授予用户系统管理员的角色c)数据库实例没有启动d)数据库侦听没有启动36 .在ORACLE中,模式是()(选择一项)a)创建表的模板b) 一个用户下所有对象的集合c) 一种设计数据库的方法d)数据库别名37 .下面哪个用户不是ORAeLE缺省安装后就存在的()(选择一项)a) Sysmanagerb) SYSTEMc) SYSd) SCOTT38 .下列ORACLE说法错误的是()(选择一项)a) UNlON集合运算中不会存在重复记录b) UNIONALL集合运算不会存在重复记录c) INTERSECT运算结果是两个结果集合中共同的部分d) MINUS运算中不存在第二个集合的记录39 .查询语句SELECTLTRIM('aaabacCaddCfg','abc,)FROMDUAL的返回结果是()(选择一项)a)addefgb)ddec)ddefgd)aabaccaddefg40 .下列不属于ORACLE分析函数的是()(选择一项)a) R0W_NUMBERb) ROWNUMc) RANKd) DENSE_RANK41 .关于ORACLE锁的级别,说法正确的是()(选择一项)a) ROWSHARE是表级锁b) 一个会话对表加了SHARE锁,别的会话不能对该表加SHARE锁c) 个会话对表加了SHARE锁,别的会话不能对该表进行修改d)使用UPDATE语句修改记录,系统一定会添加RoWSHARE锁42 .有关序列说法错误的是()(选择一项)a)序列的起始值必须在最大值和最小值之间b)序列开始使用后不能进行修改c)序列如果可以循环取值,下一个循环的开始值是STARTWITH指定的值d)序列如果没有开始取值,使用NEXTVAL不会抛出异常43 .有关ORACLE视图说法正确的是()(选择一项)a)视图的数据和对应表的数据单独存储b)视图只能在存储过程中使用c)使用WTTIICHECKOPTION可以保证通过视图修改数据不会改变表视图的记录数d)如果表不存在不能创建视图44 .有关ORAeLE索引说法正确的是()(选择一项)a)索引的数据和表的数据分开存储,但索引组织表除外b)所有索引中的数据是顺序排序c)分区表的索引必须统一存储d)只能对分区表的索引进行分区45 .下面那个部分是PL/SQL中必须存在的部分()(选择一项)a)声明部分b)执行部分c)异常处理部分d)跳转块46 .下列说法错误的是()(选择两项)a)在PL/SQL中使用表示不等于b)在PL/SQL中使用!=表示不等于c)在PL/SQL中使用相等判断使用=d)在PL/SQL中赋值使用=47 .有关ORACLE异常说法正确的是()(选择一项)a)可以利用非预定异常抛出有编号的异常b)用户可以定义预定义异常c)自定义异常反应的是ORACLE系统错误d)使用tryCatCh抓异常48 .有关ORACLE动态SQL说法错误的是()(选择一项)a)在PL/SQL中不能直接执行DDL语句b)可以给动态SQL传递参数c)可以接收动态SQL语句执行的结果d)不能利用动态SQL语句执行DDL语句49 .有关ORACLE数据类型下列说法正确的是()(选择一项)a) MYPE是取的一个行结构类型b) %ROWTYPE是取的一个行结构类型c) VARCHAR2在PL/SQL中和SQL中表示数据的长度一致d) PL/SQL和SQL中都有逻辑类型50 .调用ORACLE隐式游标的关键字是()(选择一项)a) CURSORb) SQLc) PLSQLd) ORACLECURSOR51 .下列不属于ORAeLE游标属性的是()(选择一项)a) ISOPENb) EXISTSc) FOUNDd) ROWCOUNT52 .打开ORACLE带参数游标方式正确的一种是()(选择一项)a)OPENMYCURAAAb)OPENMYCURFORAAAc)OPENMYCURUSINGAAAd)OPENMYCUR(AAA)53 .有关ORACLE函数说法正确的是()(选择项)a)ORACLE不能自定义函数b)函数每次调用的时候都需要解释执行PL/SQLc)函数只能在查询中使用d)函数可以不带参数54 .有关ORACLE函数说法错误的是()(选择一项)a)函数中可以对表进行处理b)函数的主要作用是进行业务处理c)函数主要是对传入的参数进行数据处理d)函数可以递归调用55 .有关ORACLE存储过程说法正确的是()(选择两项)a)可以在查询语句中调用储存过程b)存储过程是一次编译多次使用c)存储过程通过传出参数的形式对外提供数据传递d)存储过程中不能调用其他的存储过程56 .有关ORACLE包的说法正确的是()(选择一项)e)包的声明和包体中的函数可以在参数个数上不一致f)包中不能定义变量g)包中定义的变量所有的子过程都可以使用h)包中的存储过程不能重载,但函数可以重载57 .有关ORACLE触发器的说法正确的是()(选择一项)a)可以通过手工的方式激发触发器b)停用触发器的唯一方法是删除触发器c)行级触发器是在修改每条记录时都触发一次d)在行级触发器中可以使用deleted和inserted表58 .有关ORACLE的INSTEADOF触发器说法正确的是()(选择一项)a)替代触发器的触发源可以是表b)替代触发器可以后置触发c)替代触发器就是用触发器执行部分替换DML语句的操作d)替代触发器仍然会执行DML语句59 .有关触发器的维护说法错误的是()(选择两项)a)触发器创建后由系统自动调用b)在触发器中不能执行事务操作c)可以人为的设定触发器是否有效d)不能对一个表的所有触发器同时修改为无效60 .在Oraele中,()操作符返回两个查询所选定的所有不重复的行。(选择一项)a) Intersectb) Minusc) Uniond) or61 .在OraCIe数据库中,使用以下语句创建一个触发器:Createorreplacetriggerai_empAfterinsertonempForeachrowBegin:new.ename:=upper(:new.ename);Endai_emp;以下说法正确的是(),(选择一项)a)触发器创建成功,该触发器将每次插入的新记录的ename列变为大写b)触发器创建成功,该触发器将每次insert语句插入的第一条记录的ename列变为大写c)触发器创建失败,因为insert触发器不能更改:new对象的值d)触发器创建失败,因为after触发器不能更改:new对象的值62 .在OraCIe中,不属于游标属性的是()。(选则二项)a) %NOTFOUNDob) %FOUNDc) %1SCLOSEd) %ROWTYP,63 .在OraeIe中,关于程序包的描述错误的是()。a)程序包是一种数据库对象,它是对相关PL/SQL类型、子程序、游标、异常、变量和常量的封装b)程序包中私有对象是通过PRIVATE关键字来标识的c)PL/SQL允许两个或多个打包的子程序具有同一名称,只要子程序接受的参数数据类型不同d)程序包具有械块化、信息隐藏、新增功能及性能更佳等优点64 .在OraCle中,下列()语句定义了一个游标。(选择一项)a) CURSORcurFORSELECT*FROMcdWHEREcategory='ROCK,;b) CURSORcursorcurFORSELECT*FROMcdWHEREcategory='ROCK,;c) CURSORcurISSELECT*FROMcdWHEREcategory=,ROCK,;d) CREATECURSORcurISSELECT*FROMcdWHEREcategory='ROCK,;65 .在Oracle中,在执行SQL语句时,你不小心使用Update命令将所有的ID值设置成了Illlb那么使用O命令可以取消这一操作。(选择一项)a) EXITb) OUITc) COMMITd) ROLLBACK66 .在Oracle中,有表“cd”它包含属性"cdcode”,“category”和acdnamew>要查询CategOry取值为“CLASSIC”或“ROCK”的行,应采用语句()。a) SELECT*FROMcdWHEREcategoryIN('CLASSIC','ROCK');b) SELECT*FROMcdWHEREcategoryBETWEEN,CLASSIC1AND,ROCK,;c) SELECT*FROMcdWHERECategOIy='CLASSIC'ANDcategory=*ROCK,;d) SELECT*FROMcdWHERECategory='CLASSIC'ORcategory=*ROCK,;67 .在OraCle中,下列O语句不能用于控制游标。(选择一项)a) Openb) Createc) Fetchd) Close68 .阅读以下PL/SQL程序:1 begin2 foridxin1.lo.loop3 dbms_oUtPUt.putine(*Index,=idx);4 endloop;5 end;下说法正确的是O。(选择一项)a)程序出错,因为第2行变量idx没有声明b)程序出错,因为第3行字符串连接应该用+号,而不是IIc)程序出错,因为第3行变量idx必须用TOCHAR函数进行类型转换d)该段代码可以正常运行69 .在OraCal中,阅读以下PL/SQL代码:DELCAREvempnonumber;BEGINSELECTempnoINTOvempnoFROMcmp;END;针对上述PL/SQL片段,可能发生的异常是()。(选择二项)a) TOO_MANY_POWSb) DUP_CALj)NNDEXc) NO_DATA_FOUNDd) ZER(LDIVlDE70 .在OraCle中,使用了如下的语句创建用户TOM,则对于该用户而言,以下说法错误的是Oo(选择一项)(ORACLE)CREATEUSERTOMIDENTITFIEDBYTOMSYSa)该用户的口令为TOMSYSb) TOM默认的表空间为SYSTEMc) TOM的临时表空间为TEMPd) 使GRANTUPDATE命令可以修改TOM的口令71 .在OraCle中,下列O语句不能用于控制游标。(选择一项)(ORACLE)a) Openb) Createc) Fetchd) Close72 .在Oracle中,()服务用于执行作业和监控Oracle服务或对象的性能。(选择一项)(oracle)a) OracleHOMENAMETNSListernerb) OracleServiceSIDc) Orac1CHOMENAMEAgentd) Orac1eHO三.NAMEHTTPServer73 .在OraCle中,第1个用户对数据库表PrOdUet实行了如下的命令:SELECT*FROMProductWHEREProductID=,00FORUPDATE;此时第2个用户也对该表执行了如下命令:SELECT*FROMProductWHEREProductID=,OOl,FORUPDATEWAIT3;UPDATEProductSETProductID=,002,WHEREProdUCtID='001,;COMMIT;则针对第2个用户,说法正确的是().(选择一项)(ORACLE)a)修改成功,将ProductID为001的记录改为ProductID为002b)等待3秒后修改成功,将ProductID为OOl的记录改为ProductID为002c)提示资源被占用,如果第一个用户在3秒期间释放了资源,则提示修改成功d)等待时间大雨3秒,第1个用户释放资源后,修改成功74 .分析如下的PL/SQL程序段执行后,num的值为()(选择一项)(ORACLE)SETSERVEROUTPUTONDECLAREnumNUMBER:=314;resultNUMBER:=0;BEGINresult:=result*10+M0D(num,10);num:=TRUNC(num10,result);END;a) 31.4000b) 31.0000c) 31.4d) 3075 .在Oracle中,在提交Fetch语句后返回了两行记录,那么%NOTFOUND中存储的值是().(选择一项)a) .TRUEb) .FALSEc) .NULLd) .Nonee)276 .在OraCIe中,关于HAVING子句,以下说法正确的是().(选择一项)a) .HAVING子句和WHERE子句相同b) .HAVING子句用于单行的条件查询c) .HAVlNG子句用于已分组的条件查询d) .HAVING子句必须紧跟在WHERE子句后面使用77 .Oracle中,()函数将char或varchar数据类型转换为date数据类型.(选择一项)a),dateb).todatec).todated).ctodate78 .在OraCle中,用下列语句定义了一个过程:CREATEORREPLACEPROCEDUREtest(aINVRCHR2,bINOUTNUMBER,cOUTVARCHAR2)ISBEGINEND;假定使用的变量都已定义,下面对过程test的调用语法正确的是().(选择一项)a) test(*String,50,vstr2)b) test(v_stri,v_numl,String2,)c) test('Stringl',v_numl,v_str2)d) test(v_strl,20,v_str2)179 .在OraCle表中,如果没有指定的话,VARCHAR2的缺省长度是().(选择一项)a) .1b) .256c) .38d) .4000e) .VARCHAR2类型的列必须指定长度80 .在OraCle中,()函数将Char或Varehar数据类型转换为date数据类型。(选择项)a) dateb) to_datec) todated) Ctodate在OraCIe中,有表PerSOr,存储数据如下,执行以上查询,结果是O。(选择一项)IDNameTelOOlAmber1234002Amy2345003Emily4567004EAP5678SELECTTelFROMPersonMIERENameLIKE'A%'a)123434578b)2345c)2345678d)1234234582 .在OraCle中,下列关于PL/SQL的说法正确的是()。(选择二项)a) PL/SQL支持DML、DDL和DCLb) PL/SQL支持游标操作和事务命令c)声明部分是必选的d)可执行部分是必选的83 .在OraCle中,O服务用于执行作业和监控OraCle服务或对象的性能。(选择一项a) OracleHOME_NAMEINSListernerb) Orac1eServiceSIDc) Orac1eHOME_NAMEAgentd) Orac1eHOME一NAMEHTTPSerVer84 .在OraCIe中,数据库触发器是一个对关联表发出insert、UPdate或()语句时触发的存储过程。(选择一项)a) deleteb) dropc) created)truncate85 .在OraCle中,使用了如下的语句创建用户TOM,则对于该用户而言,以下说法错误的是O0(选择一项)CREATEUSERTOMIDENTIFIEDBYTOMSYSa)该用户的口令为TOMSYSb) TOM默认为表空间为SYSSTEMc) TOM的临时表空间为TEMPd) 使ORANTUPDATE命令可以修改TOM的口令86 .在OraCle中,下述O命令会使挂起的事务完成。(选择一项)。(选择一项)a) COMMITb) DELETEc) UPDATEd) SELECTe) INSERT87 .游标变量的类型是()a)隐式游标b)显示游标c)REF游标d)循环游标88 .在非归档方式下操作的数据库禁用了(选择一项)a)归档日志。b)联机日志。c)日志写入程序。d)日志文件。89 .由于软硬件问题导致的读写数据库文件失败,属于O故障。(选择一项)a)实例b)语句c)用户进程d)介质90 .()参数用于确定是否要倒入整个导出文件a) ConstranintSob) tablesc) fullod)file91 .在OraCle程序中处理语句时发生的逻辑错误导致()故障a)实例b)介质c)语句d)用户进程92 .以下哪种备份方式需要在完全关闭数据库后进行。a)无归档日志模式。b)归档日志模式。c)使用导出实用程序进行逻辑备份。d)以上都不对。93 .()方式的导出会从指定的表中导出所有的数据。(选择一项)a)分区b)表c)全部数据库d)表空间94 .使用()命令可查看在创建触发器时发生的编译错误a) Viewerrorsb) Showerrorsc) Displayerrorsd) Checkerrors95 .()包用于显示pl/sql块和存储过程中的调试信息a) Dbmsoutputob) Dbms_standadr<,c) Dbms_Inputod) DbInS.session。96 .()触发器允许触发操作的语句访问行的列值a)行级b)语句级c)模式d)数据库级97 .要审计用户执行的CrCate,drop,和alter等ddl语句,应创建()触发器a)行级b)语句级c)Insteadofd)模式e)数据库98 .OraCIe内置程序包由()用户所有a) sysb) systemc) SCOttd) Publie99 .()程序包用于读写操作系统文本文件a) Dbmsoutputb) Dbms_lobc) Dbms_randomd) UtLfiIe100 .以下不属于命令的pl/sql块的是()a)程序包b)过程。c)游标。d)函数101 .执行特定任务的子程序是()a)函数b)过程。c)程序包d)游标。102 .子程序的()模式参数可以在调用子程序时指定一个常量a) inb) outc) Inoutd)inout103 .下面关于主事务处理和自主事务处理的说法错误的是()a)自主事务处理结果的变化不倚赖于主事务处理的状态b)自主事务处理提交或回退时,不影响主事务处理的结果c)自主事务处理提交,对主事务处理是不可见的d)自主事务处理还可以启动其他自主事务处理104 .公用的子程序和常量在()中声明a)过程b)游标c)包规范d)包主体105 .数据字典视图()包含存储过程的代码文本a) USer.objectsb) Usertextc) User_sourced) USejdeSC106 .用于处理得到单行查询的游标称为()a)循环游标b)隐式游标c)Ref游标d)显示游标107 .隐式游标处理()属性的方式与显示游标不同a) %rowcountb) %notfoundc) %isopend) %isnotopen108 .游标变量不能用()运算符a)赋值b)比较c)任何109 .要更新游标结果集中的当前行,应使用()a) Wherecurrentofb) Forupdatec) Fordeleted) FormodifyORACLE简答题1 .在ORACLE文件系统中,包含多种类型的文件,请列出至少4种。答案:可执行文件、参数文件、控制文件、数据文件、联机重做日志文件、输出文件和临时文件等。2 .ORACLE后台进程包括哪些?请列出至少4个。答案:PMONSMONDBWRLGWRCKPTRECOLCKNARCH等。3 .请列出至少3种ORACLE中创建表时的约束。答案:NOTNULLPRIMARYKEYUNIQUEKEYFOREIGNKEYCHECK等4 .简述%typc、%rowtypc和record类型的差别答案:%type把变量声明成表的某一列类型;rowtype把变量声明成表的某一行类型,这样的类型可以包含多列,但必须和某表的结构一致;record把变量声明成记录类型,这样的记录类型可以包含多列也可以只有一列并且不必和某表的结构一致。5 .简述内连接、外连接、左外连接、右外连接的异同。答案:相同点:都是从多个表查询数据。不同点:内连接仅包含满足条件的数据,外连接包含不满足条件的数据,左外连接包含左表中不满足条件的数据,右外连接包含右表中不满足条件的数据。ORACLE判断分析题1.下面这个语句能否执行,如果不能执行,请简述原因。Selectstuname,avg(stuage)fromstuinfowherestuage>18groupbyStugender答案:不能执行,分组语句中选择的列要么是分组列要么出现在聚合函数中,StUnanIe不满足这个条件。