常见SQL笔试题
sql语句考试题
1. 查询操作1.1 基础查询从表"employees" 中选择所有员工的姓名和工资。
sqlCopy codeSELECT name, salaryFROM employees;1.2 条件查询从表"products" 中选择价格在100 到200 之间的产品。
sqlCopy codeSELECT *FROM productsWHERE price BETWEEN 100 AND 200;2. 更新操作2.1 更新记录将员工"John" 的工资增加到5000。
sqlCopy codeUPDATE employeesSET salary = 5000WHERE name = 'John';3. 插入操作3.1 插入记录向表"customers" 中插入一条新记录,包含客户姓名为"Alice",电话为"555-1234"。
sqlCopy codeINSERT INTO customers (name, phone)VALUES ('Alice', '555-1234');4. 删除操作4.1 删除记录删除表"orders" 中订单编号为1001 的记录。
sqlCopy codeDELETE FROM ordersWHERE order_id = 1001;5. 聚合函数5.1 计算平均值计算表"sales" 中产品销售数量的平均值。
sqlCopy codeSELECT AVG(quantity)FROM sales;6. 联结操作6.1 内连接从"orders" 和"customers" 表中选择订单号、订单日期和客户姓名。
sqlCopy codeSELECT orders.order_id, orders.order_date, FROM ordersJOIN customers ON orders.customer_id = customers.customer_id;以上只是一些基础的SQL 语句示例,实际的考试问题可能涉及更复杂的查询、联结、子查询等操作。
SQL基础知识题库100道及答案(完整版)
SQL基础知识题库100道及答案(完整版)1. 在SQL 中,用于创建表的语句是()A. CREATE TABLEB. INSERT INTOC. UPDATED. DELETE答案:A2. 以下哪个关键字用于在SQL 中添加数据()A. ADDB. INSERTC. APPENDD. PUT答案:B3. 在SQL 中,用于从表中检索数据的语句是()A. SELECTB. GETC. FETCHD. REQUEST答案:A4. 以下哪个关键字用于在SQL 中更新数据()A. MODIFYB. CHANGEC. UPDATED. REPLACE答案:C5. 要从表中删除数据,应使用的SQL 语句是()A. DROPB. DELETEC. REMOVED. CLEAR答案:B6. SQL 中用于创建索引的关键字是()A. CREATE INDEXB. MAKE INDEXC. BUILD INDEXD. ESTABLISH INDEX答案:A7. 以下哪种数据类型用于存储整数()A. INTB. FLOATC. VARCHARD. DATE答案:A8. 用于存储字符串的常见数据类型是()A. CHARB. INTC. DECIMALD. DOUBLE答案:A9. 在SQL 中,用于对结果集进行排序的关键字是()A. SORTB. ORDER BYC. ARRANGED. ALIGN答案:B10. 以下哪个运算符用于等于比较()A. =B. ==C. <>D. >答案:A11. 用于不等于比较的运算符是()A.!=B. < >C. NOT EQUALSD. DIFFERENT答案:B12. 以下哪个运算符用于大于比较()A. >B. >=C. <D. <=答案:A13. 用于小于比较的运算符是()A. <B. <=C. >D. >=答案:A14. 以下哪个关键字用于在SQL 中进行分组操作()A. GROUP BYB. SORT BYC. CLASSIFY BYD. CATEGORIZE BY答案:A15. 聚合函数SUM 用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最小值答案:A16. 聚合函数AVG 用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最大值答案:B17. COUNT 函数用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最小值答案:C18. MAX 函数用于()A. 计算总和B. 计算平均值C. 计算最大值D. 计算最小值答案:C19. MIN 函数用于()A. 计算总和B. 计算平均值C. 计算最大值D. 计算最小值答案:D20. 在SQL 中,用于连接两个表的关键字是()A. JOINB. CONNECTC. LINKD. BIND答案:A21. 内连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:A22. 左连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:B23. 右连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:C24. 全连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:D25. 在SQL 中,用于限制结果集行数的关键字是()A. LIMITB. RESTRICTC. BOUNDD. CONSTRAINT答案:A26. 以下哪个子句用于在SQL 中进行条件筛选()A. WHEREB. HAVINGC. FROMD. GROUP BY答案:A27. HAVING 子句通常与()一起使用A. GROUP BYB. ORDER BYC. WHERED. FROM答案:A28. 在SQL 中,用于创建视图的语句是()A. CREATE VIEWB. MAKE VIEWC. BUILD VIEWD. ESTABLISH VIEW 答案:A29. 以下哪个关键字用于删除视图()A. DROP VIEWB. DELETE VIEWC. REMOVE VIEWD. CLEAR VIEW 答案:A30. 要在SQL 中添加注释,可以使用()A. //B. /* */C. #D. --答案:D31. 在SQL 中,以下哪种数据类型用于存储日期和时间()A. DATEB. TIMEC. DATETIMED. TIMESTAMP答案:C32. 用于提取日期部分的函数是()A. DATEPART()B. DAY()C. MONTH()D. YEAR()答案:A33. 以下哪个函数用于计算字符串的长度()A. LENGTH()B. SIZE()C. COUNT()D. LEN()答案:A34. 在SQL 中,用于将字符串转换为大写的函数是()A. UPPER()B. TO_UPPER()C. CAPITALIZE()D. BIGCASE()答案:A35. 用于将字符串转换为小写的函数是()A. LOWER()B. TO_LOWER()C. SMALLCASE()D. DECAPITALIZE()答案:A36. 以下哪个函数用于去除字符串两端的空格()A. TRIM()B. CLEAN()C. REMOVE_SPACES()D. STRIP()答案:A37. 在SQL 中,用于执行事务的语句是()A. BEGIN TRANSACTIONB. START TRANSACTIONC. OPEN TRANSACTIOND. INITIATE TRANSACTION答案:A38. 提交事务使用的语句是()A. COMMITB. SUBMITC. CONFIRMD. VALIDATE答案:A39. 回滚事务使用的语句是()A. ROLLBACKB. REVERTC. CANCELD. ABORT答案:A40. 以下哪个关键字用于在SQL 中创建存储过程()A. CREATE PROCEDUREB. MAKE PROCEDUREC. BUILD PROCEDURED. ESTABLISH PROCEDURE答案:A41. 调用存储过程使用的语句是()A. EXECUTEB. CALLC. INVOKED. RUN答案:B42. 在SQL 中,用于删除存储过程的语句是()A. DROP PROCEDUREB. DELETE PROCEDUREC. REMOVE PROCEDURED. CLEAR PROCEDURE答案:A43. 以下哪个关键字用于在SQL 中创建触发器()A. CREATE TRIGGERB. MAKE TRIGGERC. BUILD TRIGGERD. ESTABLISH TRIGGER44. 删除触发器使用的语句是()A. DROP TRIGGERB. DELETE TRIGGERC. REMOVE TRIGGERD. CLEAR TRIGGER答案:A45. 在SQL 中,用于授予权限的语句是()A. GRANTB. ALLOWC. PERMITD. AUTHORIZE答案:A46. 收回权限使用的语句是()A. REVOKEB. DENYC. REFUSED. FORBID答案:A47. 以下哪个关键字用于在SQL 中创建索引的唯一性约束()A. UNIQUEB. PRIMARY KEYC. FOREIGN KEYD. CHECK答案:A48. 用于定义主键约束的关键字是()A. PRIMARY KEYB. UNIQUE KEYC. FOREIGN KEYD. INDEX KEY答案:A49. 外键约束使用的关键字是()A. FOREIGN KEYB. OUTER KEYC. RELATED KEYD. REFERENCED KEY答案:A50. 以下哪个约束用于检查数据的有效性()A. CHECKB. VALIDATEC. INSPECTD. VERIFY答案:A51. 在SQL 中,以下哪个语句用于创建数据库()A. CREATE DATABASEB. MAKE DATABASEC. BUILD DATABASED. ESTABLISH DATABASE 答案:A52. 要删除数据库,应使用的语句是()A. DROP DATABASEB. DELETE DATABASEC. REMOVE DATABASED. CLEAR DATABASE 答案:A53. 以下哪个关键字用于在SQL 中切换数据库()A. USEB. SELECT DBC. CHANGE DBD. SWITCH DB答案:A54. 在SQL 中,以下哪种操作可以对多个表同时进行()A. 联合查询B. 子查询C. 交叉连接D. 内连接55. 子查询可以在以下哪个子句中使用()A. SELECTB. FROMC. WHERED. 以上都可以答案:D56. 以下哪个语句用于在SQL 中创建用户()A. CREATE USERB. MAKE USERC. BUILD USERD. ESTABLISH USER答案:A57. 删除用户使用的语句是()A. DROP USERB. DELETE USERC. REMOVE USERD. CLEAR USER答案:A58. 在SQL 中,用于修改表结构的语句是()A. ALTER TABLEB. MODIFY TABLEC. CHANGE TABLED. UPDATE TABLE答案:A59. 以下哪个操作可以添加列到表中()A. ADD COLUMNB. INSERT COLUMNC. APPEND COLUMND. PUT COLUMN答案:A60. 要删除表中的列,应使用()A. DROP COLUMNB. DELETE COLUMNC. REMOVE COLUMND. CLEAR COLUMN答案:A61. 在SQL 中,以下哪个关键字用于对结果集进行分页()A. PAGEB. PAGINGC. OFFSETD. LIMIT答案:D62. 以下哪个函数用于返回当前日期()A. CURDATE()B. NOW()C. CURRENT_DATE()D. TODAY()答案:C63. 用于返回当前时间的函数是()A. CURTIME()B. NOW()C. CURRENT_TIME()D. THIS_TIME()答案:C64. 在SQL 中,以下哪个关键字用于为表中的列设置默认值()A. DEFAULTB. INITIALC. BASED. START答案:A65. 以下哪个语句用于在SQL 中重命名表()A. RENAME TABLEB. MODIFY TABLE NAMEC. CHANGE TABLE NAMED. UPDATE TABLE答案:A66. 要获取表的结构信息,可以使用以下哪个语句()A. DESCRIBE TABLEB. SHOW TABLE STRUCTUREC. EXPLAIN TABLED. GET TABLE DETAILS答案:A67. 在SQL 中,以下哪个关键字用于在查询结果中去除重复行()A. DISTINCTB. UNIQUEC. SINGLED. ONLY答案:A68. 以下哪个函数用于对字符串进行拼接()A. CONCAT()B. JOIN()C. MERGE()D. COMBINE()答案:A69. 在SQL 中,用于创建临时表的关键字是()A. TEMPORARY TABLEB. TEMP TABLEC. TRANSIENT TABLED. SHORT_LIVED TABLE答案:A70. 以下哪个语句用于在SQL 中为列添加注释()A. COMMENT ON COLUMNB. NOTE ON COLUMNC. REMARK ON COLUMND. EXPLAIN COLUMN答案:A71. 在SQL 中,以下哪个关键字用于在子查询中引用外部查询的结果()A. CORRELATEDB. RELATEDC. CONNECTEDD. LINKED答案:A72. 以下哪个操作符用于在SQL 中进行范围查询()A. BETWEENB. INC. LIKED. EXISTS答案:A73. 用于模糊匹配的操作符是()A. LIKEB. SIMILARC. MATCHD. CLOSE_TO答案:A74. 在SQL 中,以下哪个关键字用于对查询结果进行排序时按照多个列进行()A. ORDER BY MULTIPLEB. SORT BY SEVERALC. ORDER BY MORE THAN ONED. ORDER BY MULTIPLE COLUMNS答案:D75. 以下哪个函数用于返回字符串的子串()A. SUBSTRING()B. PART()C. SEGMENT()D. SLICE()答案:A76. 在SQL 中,以下哪个关键字用于在存储过程中定义输入参数()A. INB. OUTC. INOUTD. PARAMETER答案:A77. 用于定义输出参数的关键字是()A. INB. OUTC. INOUTD. PARAMETER答案:B78. 以下哪个关键字用于在存储过程中定义既可以输入又可以输出的参数()A. INB. OUTC. INOUTD. PARAMETER答案:C79. 在SQL 中,以下哪个关键字用于在创建表时指定自增列()A. AUTO_INCREMENTB. SELF_INCREMENTC. AUTO_GROWD. SELF_GROW答案:A80. 以下哪个语句用于在SQL 中创建序列()A. CREATE SEQUENCEB. MAKE SEQUENCEC. BUILD SEQUENCED. ESTABLISH SEQUENCE 答案:A81. 要获取序列的下一个值,可以使用以下哪个函数()A. NEXTVAL()B. GET_NEXT()C. NEXT_VALUE()D. FOLLOWING_VALUE()答案:A82. 在SQL 中,以下哪个关键字用于锁定表()A. LOCKB. HOLDC. FREEZED. BLOCK答案:A83. 以下哪种锁类型用于防止其他事务读取或修改数据()A. 共享锁B. 排他锁C. 意向共享锁D. 意向排他锁答案:B84. 共享锁允许其他事务()A. 读取数据B. 修改数据C. 删除数据D. 以上都不行答案:A85. 在SQL 中,以下哪个关键字用于解锁表()A. UNLOCKB. RELEASEC. FREED. UNBIND答案:A86. 以下哪个函数用于计算两个日期之间的天数差()A. DATEDIFF()B. DATE_DIFFERENCE()C. DAY_DIFFERENCE()D. TIME_DIFFERENCE()答案:A87. 在SQL 中,以下哪个关键字用于在查询中使用别名()A. ASB. LIKEC. SAME ASD. EQUALS答案:A88. 以下哪个语句用于在SQL 中创建索引的唯一约束()A. UNIQUE INDEXB. PRIMARY INDEXC. FOREIGN INDEXD. CHECK INDEX答案:A89. 要在SQL 中创建全文索引,应使用()A. FULLTEXT INDEXB. COMPLETE TEXT INDEXC. ALL_TEXT INDEXD. WHOLE_TEXT INDEX 答案:A90. 在SQL 中,以下哪个关键字用于在存储过程中声明变量()A. DECLAREB. DEFINEC. STATED. ANNOUNCE答案:A91. 以下哪个语句用于在SQL 中为变量赋值()A. SETB. ASSIGNC. GIVED. PUT答案:A92. 在SQL 中,以下哪个关键字用于在存储过程中进行条件判断()A. IFB. WHENC. CASED. CHECK答案:A93. 以下哪种语句用于在SQL 中进行循环操作()A. FORB. WHILEC. LOOPD. 以上都是答案:D94. 在SQL 中,用于退出循环的语句是()A. BREAKB. EXITC. STOPD. END答案:A95. 以下哪个函数用于将数字转换为字符串()A. CAST()B. CONVERT()C. TO_STRING()D. NUM_TO_STR()答案:B96. 在SQL 中,用于获取当前会话的用户名称的函数是()A. CURRENT_USERB. SYSTEM_USERC. LOGGED_IN_USERD. SESSION_USER答案:A97. 以下哪个关键字用于在SQL 中创建存储函数()A. CREATE FUNCTIONB. MAKE FUNCTIONC. BUILD FUNCTIOND. ESTABLISH FUNCTION 答案:A98. 要删除存储函数,应使用的语句是()A. DROP FUNCTIONB. DELETE FUNCTIONC. REMOVE FUNCTIOND. CLEAR FUNCTION答案:A99. 在SQL 中,用于获取数据库版本信息的函数是()A. VERSION()B. DB_VERSION()C. DATABASE_VERSION()D. SYSTEM_VERSION()答案:A100. 以下哪个操作可以在SQL 中对表进行重命名()A. RENAME TABLEB. MODIFY TABLE NAMEC. CHANGE TABLE NAMED. UPDATE TABLE NAME答案:A。
恒生笔试sql题
恒生笔试sql题恒生笔试的SQL题目通常会考察应聘者对于SQL语言的掌握程度,包括基础语法、查询优化、表连接等知识点。
以下是一些可能出现的题目:1. 假设有一个名为"Employees"的表,包含以下列:EmployeeID、FirstName、LastName、Department和Salary。
请编写一个SQL查询,以获取每个部门的平均薪资。
2. 假设有两个表:"Customers"和"Orders",其中Customers表包含CustomerID、FirstName和LastName列,Orders表包含OrderID、CustomerID和OrderDate列。
请编写一个SQL查询,以获取在过去一年内下订单的所有客户的姓名。
3. 假设有一个名为"Products"的表,包含以下列:ProductID、ProductName、Category和Price。
请编写一个SQL查询,以获取每个类别中价格最高的产品名称。
4. 假设有两个表:"Students"和"Courses",其中Students表包含StudentID、StudentName和CourseID列,Courses表包含CourseID和CourseName列。
请编写一个SQL查询,以获取每个学生所选课程的名称。
5. 假设有一个名为"BankTransactions"的表,包含以下列:TransactionID、AccountID、Amount和TransactionDate。
请编写一个SQL查询,以获取每个账户在过去六个月内的总交易金额。
以上题目只是可能的示例,实际考试中的题目可能更加复杂或有所不同。
应聘者需要具备扎实的SQL基础,并能够根据具体的问题进行分析和解决。
SQL笔试I经典44题及答案解析~
SQL笔试I经典44题及答案解析~今天这篇文章,是关于44道经典SQL测试题:01建表语句createtableStudent(sidvarchar(10),snamevarchar(10),s agedatetime,ssexnvarchar(10));insertintoStudentvalues('01','赵雷','1990-01-01','男');insertintoStudentvalues('02','钱电','1990-12-21','男');insertintoStudentvalues('03','孙风','1990-05-20','男');insertintoStudentvalues('04','李云','1990-08-06','男');insertintoStudentvalues('05','周梅','1991-12-01','女');insertintoStudentvalues('06','吴兰','1992-03-01','女');insertintoStudentvalues('07','郑竹','1989-07-01','女');insertintoStudentvalues('08','王菊','1990-01-20','女');createtableCourse(cidvarchar(10),cnamevarchar(10),ti dvarchar(10));insertintoCoursevalues('01','语文','02');insertintoCoursevalues('02','数学','01');insertintoCoursevalues('03','英语','03');createtableTeacher(tidvarchar(10),tnamevarchar(10));insertintoTeachervalues('01','张三'); insertintoTeachervalues('02','李四'); insertintoTeachervalues('03','王五');createtableSC(sidvarchar(10),cidvarchar(10),scoredeci mal(18,1));insertintoSCvalues('01','01',80); insertintoSCvalues('01','02',90); insertintoSCvalues('01','03',99); insertintoSCvalues('02','01',70); insertintoSCvalues('02','02',60); insertintoSCvalues('02','03',80); insertintoSCvalues('03','01',80); insertintoSCvalues('03','02',80); insertintoSCvalues('03','03',80); insertintoSCvalues('04','01',50); insertintoSCvalues('04','02',30); insertintoSCvalues('04','03',20);insertintoSCvalues('05','01',76);insertintoSCvalues('05','02',87);insertintoSCvalues('06','01',31);insertintoSCvalues('06','03',34);insertintoSCvalues('07','02',89);insertintoSCvalues('07','03',98);02表结构预览--学生表Student(SId,Sname,Sage,Ssex)--SId学生编号,Sname学生姓名,Sage出生年月,Ssex学生性别--课程表Course(CId,Cname,TId)--CId课程编号,Cname课程名称,TId教师编号--教师表Teacher(TId,Tname)--TId教师编号,Tname教师姓名--成绩表SC(SId,CId,score)--SId学生编号,CId课程编号,score分数1.查询“01”课程比“02”课程成绩高的所有学生的学号;selectdistinctt1.sidassidfrom(select*fromscwherecid='01')t1leftjoin(select*fromscwherecid='02')t2ont1.sid=t2.sidwheret1.score>t2.score2.查询平均成绩大于60分的同学的学号和平均成绩;selectsid,avg(score)fromscgroupbysidhavingavg(score)>603.查询所有同学的学号、姓名、选课数、总成绩selectstudent.sidassid,sname,count(distinctcid)course_cnt,sum(score)astotal_scorefromstudentleftjoinsconstudent.sid=sc.sidgroupbysid,sname4.查询姓“李”的老师的个数;selectcount(distincttid)asteacher_cnt fromteacherwheretnamelike'李%'5.查询没学过“张三”老师课的同学的学号、姓名;selectsid,snamefromstudentwheresidnotin(selectsc.sidfromteacherleftjoincourseonteacher.tid=course.tidleftjoinsconcourse.cid=sc.cidwhereteacher.tname='张三')6.查询学过“01”并且也学过编号“02”课程的同学的学号、姓名;selectt.sidassid,snamefrom(selectsid,count(if(cid='01',score,null))ascount1,count(if(cid='02',score,null))ascount2fromscgroupbysidhavingcount(if(cid='01',score,null))>0andcount(if(cid ='02',score,null))>0)tleftjoinstudentont.sid=student.sid7.查询学过“张三”老师所教的课的同学的学号、姓名;selectstudent.sid,snamefrom(selectdistinctcidfromcourseleftjointeacheroncourse.tid=teacher.tidwhereteacher.tname='张三')courseleftjoinsconcourse.cid=sc.cidleftjoinstudentonsc.sid=student.sidgroupbystudent.sid,sname8.查询课程编号“01”的成绩比课程编号“02”课程低的所有同学的学号、姓名;selectt1.sid,snamefrom(selectdistinctt1.sidassidfrom(select*fromscwherecid='01')t1leftjoin(select*fromscwherecid='02')t2ont1.sid=t2.sidwheret1.score>t2.score)t1leftjoinstudentont1.sid=student.sid9.查询所有课程成绩小于60分的同学的学号、姓名;selectt1.sid,snamefrom(selectsid,max(score)fromscgroupbysidhavingmax(score<60))t1leftjoinstudentont1.sid=student.sid10.查询没有学全所有课的同学的学号、姓名;selectt1.sid,snamefrom(selectcount(cid),sidfromscgroupbysidhavingcount(cid)<(selectcount(distinctcid)fromcourse) )t1leftjoinstudentont1.sid=student.sid11.查询至少有一门课与学号为“01”的同学所学相同的同学的学号和姓名;distinctsc.sidfrom(selectcidfromscwheresid='01')t1leftjoinscont1.cid=sc.cid12.查询和"01"号的同学学习的课程完全相同的其他同学的学号和姓名#注意是和'01'号同学课程完全相同但非学习课程数相同的,这里我用左连接解决这个问题selectt1.sid,snamefrom(sc.sid,count(distinctsc.cid)from(selectcidfromscwheresid='01')t1#选出01的同学所学的课程leftjoinscont1.cid=sc.cidgroupbysc.sidhavingcount(distinctsc.cid)=(selectcount(distinctcid)fr omscwheresid='01'))t1leftjoinstudentont1.sid=student.sidwheret1.sid!='01'13.把“SC”表中“张三”老师教的课的成绩都更改为此课程的平均成绩;#暂跳过update题目14.查询没学过"张三"老师讲授的任一门课程的学生姓名selectsnamefromstudentwheresidnotin(selectdistinctsidfromscleftjoincourseonsc.cid=course.cidleftjointeacheroncourse.tid=teacher.tidwheretname='张三')15.查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩selectt1.sid,sname,avg_scorefrom(selectsid,count(if(score<60,cid,null)),avg(score)asavg_scorefromscgroupbysidhavingcount(if(score<60,cid,null))>=2)t1leftjoinstudentont1.sid=student.sid16.检索"01"课程分数小于60,按分数降序排列的学生信息selectsid,if(cid='01',score,100)fromscwhereif(cid='01',score,100)<60orderbyif(cid='01',score,100)desc17.按平均成绩从高到低显示所有学生的平均成绩selectsid,avg(score)fromscgroupbysidorderbyavg(score)desc18.查询各科成绩最高分、最低分和平均分:以如下形式显示:课程ID,课程name,最高分,最低分,平均分,及格率selectsc.cid,cname,max(score)asmax_score,min(score)asmin_score,avg(score)asavg_score,count(if(score>=60,sid,null))/count(sid)aspass_ratefromscleftjoincourseonsc.cid=course.cidgroupbysc.cid19.按各科平均成绩从低到高和及格率的百分数从高到低顺序#这里先按照平均成绩排序,再按照及格百分数排序,selectcid,avg(score)asavg_score,count(if(score>=60,sid,null))/count(sid)aspass_rate fromscgroupbycidorderbyavg_score,pass_ratedesc20.查询学生的总成绩并进行排名selectsid,sum(score)assum_scorefromscgroupbysidorderbysum_scoredesc21.查询不同老师所教不同课程平均分从高到低显示selecttid,avg(score)asavg_scorefromcourseleftjoinsconcourse.cid=sc.cidgroupbytidorderbyavg_scoredesc22.查询所有课程的成绩第2名到第3名的学生信息及该课程成绩selectsid,rank_num,score,cidfrom(selectrank()over(partitionbycidorderbyscoredesc)asrank_nu m,sid,score,cidfromsc)twhererank_numin(2,3)23.统计各科成绩各分数段人数:课程编号,课程名称,[100-85],[85-70],[70-60],[0-60]及所占百分比selectsc.cid,cname,count(if(scorebetween85and100,sid,null))/count(sid),count(if(scorebetween70and85,sid,null))/count(sid),count(if(scorebetween60and70,sid,null))/count(sid),count(if(scorebetween0and60,sid,null))/count(sid)fromscleftjoincourseonsc.cid=course.cid groupbysc.cid,cname24.查询学生平均成绩及其名次selectsid,avg_score,rank()over(orderbyavg_scoredesc) from(selectsid,avg(score)asavg_scorefromscgroupbysid)t25.查询各科成绩前三名的记录selectsid,cid,rank1from(selectcid,sid,rank()over(partitionbycidorderbyscoredesc)asrank1 fromsc)twhererank1<=326.查询每门课程被选修的学生数selectcount(sid),cidfromscgroupbycid27.查询出只选修了一门课程的全部学生的学号和姓名selectsidfromscgroupbysidhavingcount(cid)=128.查询男生、女生人数selectssex,count(distinctsid)fromstudentgroupbyssex 29.查询名字中含有"风"字的学生信息selectsid,snamefromstudentwheresnamelike'%风%'30.查询同名同性学生名单,并统计同名人数selectssex,sname,count(sid)fromstudentgroupbyssex,snamehavingcount(sid)>=231.查询1990年出生的学生名单(注:Student表中Sage列的类型是datetime)selectsid,sname,sagefromstudentwhereyear(sage)=199032.查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序排列selectcid,avg(score)asavg_scorefromscgroupbycidorderbyavg_score,ciddesc33.查询不及格的课程,并按课程号从大到小排列selectcid,sid,scorefromscwherescore<60orderbyciddesc,sid34.查询课程编号为"01"且课程成绩在60分以上的学生的学号和姓名;selectsid,cid,scorefromscwherecid='01'andscore>6035.查询选修“张三”老师所授课程的学生中,成绩最高的学生姓名及其成绩selectsc.sid,sname,cname,scorefromscleftjoincoursestyle="font-weight:600;">=course.cidleftjointeacherstyle="font-weight:600;">=teacher.tidleftjoinstudentstyle="font-weight:600;">=student.sidwheretname='张三'orderbyscoredesclimit1;36.查询每门功课成绩最好的前两名selectcid,sid,rank1from(selectcid,sid,rank()over(partitionbycidorderbyscoredesc)asrank1fromsc)twhererank1<=237.统计每门课程的学生选修人数(超过5人的课程才统计)。
SQL笔试题2
1、查找整个职员表的所有内容。
select *from employees2、查看雇员名字(last_name)。
select last_namefrom employees3、查看雇员编号、名字和工种。
select last_name,job_id,employee_idfrom employees4、显示所有雇员的姓名、工资并将DEPARTMENT_ID显示为(Department_Id)。
select last_name,salary,DEPARTMENT_ID as Department_Idfrom employees5、查找在60号部门工作的雇员。
select last_name+first_name name,department_idfrom employeeswhere departmet_id=606、要求查找职位为SH_CLERK和SA_MAN的雇员姓名(last_name)。
select last_name job_idfrom employeeswhere job_id in (’sh_clerk’,’sa_man’)7、查找职位不是SH_CLERK和SA_MAN的雇员工种及姓名。
将姓名显示为(first_name+last_name命名为”Name”)。
select first_name+last_name Name, job_idfrom employeeswhere job_id not in (’sh_clerk’,’sa_man’)8、查找哪些雇员的工资在2000到3000之间select *from employeeswhere salary between 2000 and 30009、查找哪些雇员的工资不在3000到5000之间select *from employeeswhere salary not between 3000 and 500010、查找first_name以D开头,后面仅有三个字母的雇员信息。
SQL笔试题带答案
SQL笔试题带答案一单词解释(2分/个) 34分Data 数据Database 数据库RDBMS 关系数据库管理系统GRANT 授权REVOKE 取消权限DENY 拒绝权限DECLARE 定义变量PROCEDURE存储过程事务Transaction 触发器TRIGGER 继续continue 唯一unqiue主键primary key 标识列identity 外键foreign key 检查check 约束constraint二编写SQL语句(5分/题) 50分(包含笔试题问题和解答答案)1) 创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话Create table stu (学号int ,姓名varchar(8),年龄int,性别varchar(4),家庭地址varchar(50),联系电话int);2) 修改学生表的结构,添加一列信息,学历Alter table stu add 学历varchar(6);3) 修改学生表的结构,删除一列信息,家庭住址Alter table stu drop column 家庭地址4) 向学生表添加如下信息:学号姓名年龄性别联系电话学历1A22男123456小学2B21男119中学3C23男110高中4D18女114大学Insert into stu values(1,’A’,22,’男’,123456,’小学’)Insert into stu values(2,’B’,21,’男’,119,’中学’)Insert into stu values(3,’C’,23,’男’,110,’高中’)Insert into stu values(4,’D’,18,’女’,114,’大学’)5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”Update stu set 学历=’大专’where 联系电话like ‘11%’6) 删除学生表的数据,姓名以C开头,性别为‘男’的记录删除Delect from stu where 性别=’男’and 姓名like ‘c%’7) 查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号示出来Select 姓名,学号from stu where 年龄<22 and 学历=’大专’8) 查询学生表的数据,查询所有信息,列出前25%的记录Select top 25 percent * from stu9) 查询出所有学生的姓名,性别,年龄降序排列Select 姓名,性别from stu order by 年龄desc10) 按照性别分组查询所有的平均年龄Select avg(年龄) from stu group by 性别三填空(3分/题) 36分(包含笔试题问题和解答答案)1) 索引分为__聚集索引___和__非聚集索引__在一张表上最多可以创建1个聚集索引_索引。
SQL常考笔试题
订单:#订单编号,总价,订购日期;
订单子项: #子项编号,订单编号,产品编号,订购数量;
该表最高符合第()范式。C
A. 一
B. 二
C. 三
D. 未规范化的
14. 创建sql语句如下:
create table userInfo
(
userId int identity(-1,1), 第1行
针对以下题目请选择正确答案(每道题目有一个或多个正确的答案)。针对每一道题目,所有答案都选对,则该题得分,否则不得分。
1. 数据库设计的最终目标不包括()。 (选择两项)BD
A. 高效
B. 满足范式要求
C. 安全
D. 表现设计者的技术实力
E. 易用
F. 便于将来扩展功能和容量
2. 有关数据冗余说法错误的是()。(选择一项)C
userName nvarchar(20) not null, 第2行
cardNO char not null, 第3行
age smallint(2), 第4行
address ntext(300) 第5行
)
执行时,会在第()行出现错误。(选择两项)DE
A. 1
A. exec scoreproc 1,@myscore output
print @myscore
B. exec scoreproc @id = 1,@myscore output
print @myscore
C. declare @myscore numeric(4,2)
exec scoreproc 1,@myscore output
sql经典笔试题一(含答案)
二编写SQL语句(5分/题)501) 创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话2) 修改学生表的结构,添加一列信息,学历3) 修改学生表的结构,删除一列信息,家庭住址4) 向学生表添加如下信息:学号姓名年龄性别联系电话学历1 A 22 男123456 小学2 B 21 男119 中学3 C 23 男110 高中4 D 18 女114 大学5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”6) 删除学生表的数据,姓名以C开头,性别为‘男’的记录删除7) 查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号示出来9) 查询出所有学生的姓名,性别,年龄降序排列10) 按照性别分组查询所有的平均年龄三填空(3分/题) 361)索引分为___聚簇索引__和_ 非聚簇索引___2) TRUNCATE TABLE(删除所有,不能回滚)命令是什么含义?和Delete from(删除一个或者多个记录,能回滚)表名有什么区别?2)说出以下聚合数的含义:avg ,sum ,max ,min , count ,count(*)Avg 求平均值Sum 求和Max 最大值Min 最小值Count 返回满足条件的记录Count(*)函数返回表中所有记录数:8) 视图可以更新吗?会影响到实际表吗?视图是可以更新的,视图只是基于基本表上的虚拟表,对视图的更新会直接影响到实际表create table student(stu_no varchar(4) primary key,stu_name varchar(10) not null,stu_age decimal(3,0),stu_sex char(2),stu_address varchar(255),stu_tel number(20))select * from studentalter table student add stu_xl varchar(20)alter table student drop column stu_addressinsert into student(stu_no,stu_name,stu_age,stu_sex,stu_tel,stu_xl) values('1','A','22','ÄÐ','123456','Сѧ')insert into student(stu_no,stu_name,stu_age,stu_sex,stu_tel,stu_xl) values('2','B','21','ÄÐ','119','ÖÐѧ');insert into student(stu_no,stu_name,stu_age,stu_sex,stu_tel,stu_xl) values('3','C','23','ÄÐ','110','¸ßÖÐ');insert into student(stu_no,stu_name,stu_age,stu_sex,stu_tel,stu_xl) values('4','D','18','Å®','114','´óѧ');insert into student(stu_no,stu_name,stu_age,stu_sex,stu_tel,stu_xl) values('5','D','18','Å®','114','´óѧ');update student set stu_xl='´óר'where stu_tel like'11%'delete from student where stu_sex='ÄÐ'and stu_name like'C%'select stu_no,stu_name from student where stu_xl='´óר'and stu_age <'22'select stu_name,stu_sex from student order by stu_age descselect avg(stu_age),stu_sex from student where stu_sex='ÄÐ'group by stu_sex查询重复个数select stu_name,count(*) from student group by stu_name having count(*)>1。
sql数据库基础知识笔试题
sql数据库基础知识笔试题1. 什么是SQL数据库?SQL(Structured Query Language)是一种用于管理关系数据库管理系统(RDBMS)的编程语言。
它用于创建、修改和管理数据库中的数据,并可以执行查询和数据操作。
2. SQL数据库的常见类型有哪些?常见的SQL数据库类型包括:- MySQL:开源的关系数据库管理系统,支持跨平台使用,被广泛应用于Web 开发。
- Oracle:一个全功能的关系数据库管理系统,适用于大型企业级应用。
- Microsoft SQL Server:由微软开发的关系数据库管理系统,适用于Windows 环境。
- PostgreSQL:开源的关系数据库管理系统,拥有很强的扩展性和兼容性。
- SQLite:嵌入式关系数据库管理系统,适用于小型应用或移动设备。
3. SQL数据库的基本操作有哪些?SQL数据库的基本操作包括:- 创建数据库:CREATE DATABASE database_name;- 删除数据库:DROP DATABASE database_name;- 创建表:CREATE TABLE table_name (column1 datatype, column2 datatype, ...);- 删除表:DROP TABLE table_name;- 插入数据:INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);- 更新数据:UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;- 删除数据:DELETE FROM table_name WHERE condition;- 查询数据:SELECT column1, column2, ... FROM table_name WHERE condition;4. SQL数据库中的数据类型有哪些?SQL数据库中常见的数据类型包括:- 整数类型:INT, SMALLINT, BIGINT- 浮点数类型:FLOAT, DOUBLE- 字符串类型:CHAR, VARCHAR- 日期和时间类型:DATE, TIME, DATETIME- 布尔类型:BOOLEAN5. 什么是SQL语句的约束?SQL语句的约束用于限制对数据库中数据的操作。
SQL高级复习题笔试
SQL高级复习题类型:(笔试)范围:内测/月考日期:时长:1小时总分数:100 分姓名:准考证号:证件号码:理论部分注意:考试结束试卷必须交回,答案填写在答题卡上1.( )不属于任何文件组。
(选一项)A、次数据文件B、主数据文件C、日志文件D、其他2.E-R图中,关系集用下面( )来表示。
(选一项)A、矩形B、椭圆形C、菱形D、圆形3.SQL Server数据库有2种登录认证方式。
其中在( )方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。
(选一项)A、Windows身份验证。
B、以超级用户身份登录时。
C、SQL Server 身份验证。
D、以系统身份登录时。
4.SQL Server数据库中,下列不属于T-SQL事务管理语句的是(选一项)A、BEGIN TRANSACTION;B、END TRANSACTION;C、COMMIT TRANSACTION;D、ROLLBACK TRANSACTION;5.Sql server中,( )命令用来删除表对象。
(选一项)A、DropB、RemoveC、TruncateD、Delete6.SQLServer2005中,已知执行语句:select count(score),sum(score)from score返回的结果是10和750,那么执行语句:select avg(score) from score,返回的结果是(选一项)A、10B、75C、750D、75007.SQLSever 2005中数据库中,关键字()标志着批处理的结束。
(选一项)A、ENDB、GOC、FINISHD、PRINT8.UNIQUE约束和主键约束也是哪种完整性的体现(选一项)A、域完整性B、引用完整性C、实体完整性D、其他9.对于下面的存储过程:CREATE PROCEDURE Myp1 @p Int AsSelect Studentname,Age from Students where Age=@p假如你要在Students表中查找年龄是18岁的学生,()可以正确的调用这个存储过。
(完整版)常见SQL笔试题
SQL笔试题1.统计查问 SQL练习数据库中表构造以下,字段分别任rg (日期), shengfu (输赢),观察 group by语句的使用:2005-05-09胜2005-05-09胜2005-05-09负2005-05-09负2005-05-10胜2005-05-10负2005-05-10负假如要生成以下结果 , 该怎样写 sql语句?输赢2005-05-09 2 22005-05-10 1 2答案:1)select rq, sum(case when shengfu=' 胜' then 1 else 0 end)' 胜',sum(case when shengfu=' 负 'then 1 else 0 end)' 负' from #tmp group by rq2) select N.rq,N. 胜 ,M. 负from (select rq, 胜=count(*) from #tmp where shengfu=' 胜 'group by rq)N inner join(select rq, 负 =count(*) from #tmp where shengfu='负'group by rq)M on胜负from(select col001,count(col001) a1 from temp1 where col002='胜' group by col001) a,(select col001,count(col001) b1 from temp1 where col002='负' group by col001) b2.条件判断 SQL 练习表中有 A B C三列,用SQL语句实现:当 A 列大于 B 列时选择 A 列不然选择B列,当B 列大于 C 列时选择 B 列不然选择 C 列答案:select (case when a>b then a else b end ),(case when b>c then b esle c end)from table_name3.日期统计 SQL 练习请拿出tb_send表中日期(SendTime字段)为当日的所有记录?(SendTime 字段为datetime 型,包括日期与时间 )答案:select * from tb where datediff(dd,SendTime,getdate())=04.统计查问 SQL 练习有一张表,里面有 3 个字段:语文,数学,英语。
写sql语句 常见题目
写sql语句常见题目写SQL语句是一个非常重要的技能,因为它允许你从数据库中检索、插入、更新和删除数据。
下面是一些常见的SQL题目:1. 选择查询(Select Queries)查询一个表中的所有列。
查询一个表中的特定列。
查询满足特定条件的行。
排序查询结果。
2. 插入查询(Insert Queries)插入一行数据到一个表中。
插入多行数据到一个表中。
3. 更新查询(Update Queries)更新表中的现有数据。
4. 删除查询(Delete Queries)从表中删除一行。
从表中删除多行。
删除整个表的数据。
5. 连接查询(Join Queries)内连接(INNER JOIN)。
左连接(LEFT JOIN)。
右连接(RIGHT JOIN)。
全外连接(FULL OUTER JOIN)。
6. 子查询(Subqueries)在SELECT语句中使用子查询。
在FROM语句中使用子查询。
7. 聚合函数(Aggregate Functions)COUNT() - 计算行数。
SUM() - 计算总和。
AVG() - 计算平均值。
MAX() - 找出最大值。
MIN() - 找出最小值。
8. 创建表(Table Creation)创建一个新表。
向表中添加新列。
9. 约束(Constraints)主键约束。
外键约束。
非空约束。
10. 视图(Views)创建视图。
更新视图中的数据。
T-SQL内部测试笔试题
《MySchool数据库设计优化》内部测试-笔试试卷1) 在SQL Server 中,为数据库表建立索引能够()。
A. 防止非法的删除操作B. 防止非法的插入操作C. 提高查询性能D. 节约数据库的磁盘空间2) 在SQL SERVER中,创建一个表使用()语句。
A. INSERTB. DROPC. CREA TED. ALERT3) 在SQL SERVER中,下面关于视图说法错误的是()。
A. 对查询执行的大多数操作也可以在视图上进行B. 使用视图可以增加数据库的安全性C. 不能利用视图增加,删除,修改数据库中的数据D. 视图使用户更灵活的访问所需要的数据4) 在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的()阶段。
A. 需求分析B. 概要设计C. 逻辑设计D. 物理设计5) 在SQL Server 数据库中,如果强制要求grades表中的学员必须是Students表中存在的学员,以下描述正确的是()。
A. 在grades表中创建外键约束B. 在grades表中创建检查约束C. 在grades表中创建唯一约束D. 在grades表中创建默认约束6) 在SQL Server 数据库中,下面的T-SQL语句段执行第三句时出现错误,数据库中的内容修改情况是()。
BEGIN TRANSACTIONupdate Account set balance=7800 where id=1update Account set balance=9000 where id=1IF @@error <> 0ROLLBACK TRANSACTIONELSECOMMIT TRANSACTIONA. Account表中id为1的记录中balance字段的值被修改为7800B. Account表中id为1的记录中balance字段的值被修改为9000C. Account表中id为1的记录中balance字段的值不变D. 不可能发生这种情况7) 在SQL Server 数据库中,有关下列T-SQL语句的功能,说法正确的是()。
sql语句笔试题
sql语句笔试题摘要:1.SQL 语句概述2.SQL 语句的分类3.SQL 语句的基本语法4.SQL 语句在笔试题中的应用5.SQL 语句笔试题的解题技巧正文:【1.SQL 语句概述】SQL 语句(Structured Query Language)是一种用于管理关系型数据库的编程语言。
它可以用于查询、插入、更新和删除数据库中的数据,还可以用于创建和修改数据库表结构。
SQL 语句具有丰富的功能和高度的灵活性,是数据库管理员和开发人员必备的技能。
【2.SQL 语句的分类】SQL 语句主要分为以下几类:1.数据查询语句:如SELECT 语句,用于查询数据库中的数据。
2.数据插入语句:如INSERT 语句,用于向数据库中插入新的数据。
3.数据更新语句:如UPDATE 语句,用于更新数据库中的数据。
4.数据删除语句:如DELETE 语句,用于删除数据库中的数据。
5.数据定义语句:如CREATE、ALTER 和DROP 语句,用于定义、修改和删除数据库表结构。
【3.SQL 语句的基本语法】SQL 语句的基本语法包括:1.SELECT 语句:用于查询数据库中的数据。
其基本语法为:SELECT column_name(s) FROM table_name WHERE condition;2.INSERT 语句:用于向数据库中插入新的数据。
其基本语法为:INSERT INTO table_name(column1, column2,...) VALUES (value1, value2,...);3.UPDATE 语句:用于更新数据库中的数据。
其基本语法为:UPDATE table_name SET column_name = new_value WHERE condition;4.DELETE 语句:用于删除数据库中的数据。
其基本语法为:DELETE FROM table_name WHERE condition;5.CREATE 语句:用于创建数据库表。
mysql笔试题写sql语句
mysql笔试题写sql语句
好的,以下是一些MySQL笔试题的SQL语句示例:
1.查询表格A中所有学生的姓名和年龄,并按照年龄升序排列:
Sql*
SELECT name, age FROM A ORDER BY age ASC;
2.查询表格A中年龄大于等于18岁的学生的姓名和年龄,并按年龄降序排列:
Sql*
SELECT name, age FROM A WHERE age >= 18ORDER BY age DESC;
3.查询表格A中年龄最大的学生的姓名和年龄:
Sql*
SELECT name, MAX(age) FROM A;
4.查询表格A中年龄最小的学生的姓名和年龄:
Sql*
SELECT name, MIN(age) FROM A;
5.查询表格A中姓为“张”的学生的人数:
Sql*
SELECT COUNT(*) FROM A WHERE name LIKE'张%';
6.查询表格A中姓为“张”且年龄小于等于20岁的学生的人数:
Sql*
SELECT COUNT(*) FROM A WHERE name LIKE'张%'AND age <= 20;。
sql 聚合查询查询 笔试题
sql 聚合查询查询笔试题
题目:假设有一个名为"orders"的表格,其中包含以下列:order_id(订单ID)、customer_id(客户ID)、order_date(订单日期)、amount(订单金额)。
1.查询每个客户的订单总金额。
2.查询订单总金额超过1000的客户ID。
3.查询订单总金额最多的前5名客户ID。
4.查询订单总金额在500到1000之间的客户数量。
5.查询订单总金额在500到1000之间的客户ID。
6.查询订单总金额在500到1000之间的客户ID,并按照订单日期排
序。
7.查询订单总金额在500到1000之间的客户ID,并按照订单总金额降
序排序。
8.查询每个客户的订单总金额,但只返回总金额大于500的客户。
9.查询每个客户的订单总金额,但只返回总金额大于500的客户,并按
照订单总金额降序排序。
10.查询每个客户的订单总金额,但只返回总金额大于500的客户,并按
照订单日期升序排序。
请使用SQL语句回答以上问题,并解释每条语句的含义和实现方式。
SQL笔试题
1 : This symbol, When you put infront of a line in the parameter file, signifiesa comment1. $2. @3. #4. !答案【3】2 : When you change a parameter value in the parameter file, when will that change takes affect?1. Immediately after saving the parameter file2. At the first CHECKPOINT after saving the paramter file3. When the DBWR finishes writing all the dirty buffers to the disk4. At the next instance startup答案【4】3 : ALTER SYSTEM DEFFERED command modifies the global parameters for1. existing sessions after a certain amount of time2. new sessions only3. existing and new sessions4. depends on the SPIN_COUNT initialization parameter答案【2】4 : The location where debugging trace files for back ground processes are written, is specified by1. LOGFILE_DEST2. ORACLE_HOME3. BACKGROUND_DUMP_DEST4. CORE_DUMP_DEST答案【3】5 : In case of heavy contention for latches,set the LOG_SIMULTANEOUS_COPIES initialization parameter to1. Twice the number of CPUs2. Same as the DB Block Buffers3. Same as the Shared Pool Size4. None of the above答案【4】6 : What is the first step in manually creating a new database1. Startup an instance2. Start SQL*Plus and connect to Oracle as SYSDBA3. Check the instance identifier for your system4. Create a parameter file答案【4】7 : Which of the following is true regarding control files1. Oracle recommeds atleast two control files stored on two separate disks2. Oracle recommeds atleast two control files stored on one disk3. Oracle recommeds to store one control file4. One control file is not enough to run a database答案【1】8 : Tom created a database with a DB_BLOCK_SIZE of 2k, he wants to increase this to 4k, what is his next step1. Issue ALTER SYSTEM SET DB_BLOCK_SIZE=4k command2. recreate the database with the new setting3. It can be done in both the ways4. the DB_BLOCK_SIZE cannot be 4k答案【2】9 : How many rollback segments are required for Oracle to startup apart from SYSTEM rollback segment1. Oracle can start with just the system rollback segment2. Oracle Needs at least 3 rollback segments before it can start3. Oracle Needs a Temp Rollback Segment before it can start4. None of the above答案【1】10 : The unit of measurement for DB_BLOCK_SIZE intialization parameter is1. BLOCKS2. BYTE3. PAGE4. ROW答案【2】11 : This table space is a must before you run the database instance1. ROLLBACK2. TOOLS3. TEMP4. SYSTEM答案【4】12 : Which initialization parameter determines the rollback segments that can be used by Oracle1. ROLLBACKS2. LOGFILE GROUP3. ROLLBACK_SEGMENTS4. DBA_ROLLBACK_SEGS答案【3】13 : Which of the following is a valid but undocumented parameter in Oracle1. _CORRUPT_RBS2. _CORRUPT_REDO3. _CORRUPT_ROLLBACK_SEGMENTS4. None of the above答案【3】14 :Physical Disk Resources in an Oracle Database are1. Control Files2. Redo Log Files3. Data Files4. All of the above答案【4 】15 :What is a Schema1. A Physical Organization of Objects in the Database2. A Logical Organization of Objects in the Database3. A Scheme Of Indexing4. None of the above答案【2 】16:Oracle Instance is1. Oracle Memory Structures2. Oracle I/O Structures3. Oracle Background Processes4. All of the Above答案【4】17.关系数据库中的视图属于4 个数据抽象级别中的(A )A 外部模型B 概念模型C 逻辑模型D 物理模型18.在下列关于关系的陈述中,错误的是(B )A 表中任意两行的值不能相同B 表中任意两列的值不能相同C 行在表中的顺序无关紧要D 列在表中的顺序无关紧要19.为了防止一个用户的工作不适当地影响另一个用户,应该采取(C )A 完整性控制B 安全性控制C 并发控制D 访问控制20.关系数据库中,实现实体之间的联系是通过表与表之间的(D )A 公共索引B 公共存储C 公共元组D 公共属性21.在MS SQL Server 中,用来显示数据库信息的系统存储过程是(D)A sp_ dbhelpB sp_ dbC sp_ helpD sp_ helpdb22.下面系统中不属于关系数据库管理系统的是(C )A OracleB MS SQL ServerC IMSD DB223.SQL 语言中,删除一个表的命令是(B)A DELETEB DROPC CLEARD REMORE24.如果在关系的分片过程中使用了选择操作,则不可能是(B )A 水平分片B 垂直分片C 导出分片D 混合分片25.在一个实体集中,一个实体实例(一行)与另外多个实例(多行)相关,则这个实体称为(A)A 递归实体B 弱实体C 复合实体D 联系实体26.存在一个等待事务集{T0,T1,⋯,T n},其中T0 正等待被T1 锁住的数据项,T1 正等待被T2 锁住的数据项,T n-1 正等待被T n 锁住的数据项,且T n 正等待被T0 锁住的数据项,则系统的工作状态处于(D )A 并发处理B 封锁C 循环D 死锁27.在分布式数据库中,若存取数据时只需指出片段名称,不必指出片段地址,则称系统具有(B )A 片段透明性B 地址透明性C 局部映象透明性D 异地透明性28.某学校规定,每一个班级至多有50 名学生,至少有10 名学生;每一名学生必须属于一个班级。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
精心整理
SQL 笔试题
1.统计查询SQL 练习
数据库中表结构如下,字段分别任rg (日期),shengfu (胜负),考察groupby 语句的使用: 2005-05-09胜
2005-05-09胜
胜负
答案:
' 2)selectN.rq,N.胜,M.负from(
selectrq,胜=count(*)from#tmpwhereshengfu='胜'groupbyrq)Ninnerjoin
(selectrq,负=count(*)from#tmpwhereshengfu='负'groupbyrq)MonN.rq=M.rq
3)selecta.col001,a.a1胜,b.b1负from
(selectcol001,count(col001)a1fromtemp1wherecol002='胜'groupbycol001)a,
(selectcol001,count(col001)b1fromtemp1wherecol002='负'groupbycol001)b wherea.col001=b.col001
2.条件判断SQL练习
表中有ABC三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列
答案:
3.
请取出
答案:
4.
有一张表,里面有3个字段:语文,数学,英语。
其中有3条记录分别表示语文70 分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):
大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。
显示格式:
语文数学英语
及格优秀不及格
答案:
select
(casewhen语文>=80then'优秀' when语文>=60then'及格' else'
when
else'
when
else'
7.
table1
月份mon
答案:
一月份
一月份0210
一月份035
二月份028
二月份049
三月份038
table2
部门dep部门名称dname
答案:--------------
01国内业务一部
02国内业务二部
03国内业务三部
04国际业务部
table3(result)
部门dep一月份二月份三月份
答案:答案:--
0110nullnull
02108null
03null58
04nullnull9
答案:
1)
selecta.部门名称dname,b.业绩yjas'一月份',c.业绩yjas'二月份',d.业绩yjas'三月份'
wherea.
a.部门
a.部门
2)
8.
答案:
selectid,Count(*)fromtbgroupbyidhavingcount(*)>1
select*from(selectcount(ID)ascountfromtablegroupbyID)TwhereT.count>1 9.统计查询SQL练习
用一条SQL语句查询出每门课都大于80分的学生姓名namekechengfenshu
张三语文81
张三数学75
李四语文76
李四数学90
王五语文81
10.
by学号,
11.行列转换问题yearmonthamount 199111.1 199121.2 199131.3
199141.4
199212.1
199222.2
199232.3
199242.4
这个是
(partitionbynameorderbyyear)b2,lead(m,2)over(partitionbynameorderbyyear) b3,rank()over(
partitionbynameorderbyyear)rkfromt)whererk=1;
12.行列转换SQL考核
原表:
courseidcoursenamescore
1java70
2oracle90
3xml40
4jsp30
答案:
答案:
答案:
答
(
13.SQL练习
(1)表名:购物信息
购物人商品名称数量
A 甲 2。