题目一:
table:成绩单
不使用union查找出前3名的男生和女生分数
sql:select top 10 分数 from 成绩单 group by 性别 order by 分数;(错误!)
更正:(2011-09-07)
select a.* from grades a where 3>(select count(*) from grades where gender=a.gender and grade>a.grade ) order by a.gender, a.grade desc;
查询结果:
题目二:
table:成绩单
姓名
|
课程
|
分数
|
张三
|
语文
|
85
|
李四
|
英语
|
95
|
张三
|
数学
|
70
|
。。。
|
。。。
|
。。。
|
选择所有课程都过了80分的学生姓名
sql:select distinct(姓名) from 成绩单 where 姓名 not in (select disntinct(姓名) from 成绩单 where 分数<=80)
以下两种方法均来自:http://lj-zhu.iteye.com/blog/644799
方法一:
select name from test.stu
group by name
having min(score)>=80
方法二:
select name from test.stu
group by name
having count(score) =sum(case when
score>80 then 1 else 0 end )
- 大小: 1.7 KB
- 大小: 1.2 KB
分享到:
相关推荐
从给定的SQL练习题目中,我们可以提炼出一系列重要的SQL知识点,这些知识点涵盖了数据库查询的基础到进阶操作,包括但不限于子查询、连接查询、聚合函数、条件筛选等。以下是对这些知识点的详细解析: ### 1. 子...
这两个查询都将返回`num`字段的最小值,因为它们都首先对`num`进行排序,然后选择第一个记录。 33. 要求查询每个`Customer`的`Revenue`总和。这里有几种不同的写法,它们都会得到相同的结果: ```sql -- 方法一:...
5. 过程化SQL(PL/SQL或T-SQL):在某些数据库系统中,如Oracle和SQL Server,支持将多个SQL语句组合成过程化的代码块。 三、基本SQL操作 1. 创建表:使用`CREATE TABLE`语句,定义表名和字段名、数据类型等,例如...
"一道题涉及到50个SQL语句" 这道题目主要考察了 SQL 语句的使用,涉及到多表连接、子查询、聚合函数等知识点。下面将对每个问题进行详细的解释和分析: 1. 查询“001”课程比“002”课程成绩高的所有学生的学号: ...
如`INNER JOIN`返回两个表中匹配的记录,`LEFT JOIN`返回左表的所有记录及右表匹配的记录,`RIGHT JOIN`反之,`FULL JOIN`返回两表的所有记录。 10. **子查询**: 子查询是嵌套在其他SQL语句中的查询,可用于复杂...
4. **连接**:使用`JOIN`关键字可以合并来自两个或更多表的数据: ```sql SELECT E.Name, D.DepartmentName FROM Employees E JOIN Departments D ON E.DepartmentID = D.DepartmentID; ``` 这将显示员工...
题目 3: 一个叫 department 的表,里面只有一个字段 name,一个共有 4 条纪录,分别是 a,b,c,d,四个球队对现在四个球队进行比赛,用一条 SQL 语句显示所有可能的比赛组合。 答案:select a.name, b.name from team...
内联接返回两个表中存在匹配的所有行,如果某行在其中一个表中没有匹配,则不会出现在结果集中。例如,在题目中的一个例子为: - **查询员工和订单信息**: ```sql SELECT Employees.Name, Orders.Product FROM ...
19. **存储过程(Stored Procedure)**:预编译的SQL语句集合,可包含逻辑控制,如`CREATE PROCEDURE procedure_name AS SELECT * FROM table;` 20. **触发器(Trigger)**:自动执行的数据库操作,如`CREATE ...
3. **INNER JOIN**:内连接是一种连接类型,它只返回两个表中匹配的行。当使用`INNER JOIN`时,只有当左表(即第一个表)和右表(即第二个表)中的行满足指定条件时,才会返回这些行。 4. **WHERE子句**:用于过滤...
这些SQL语句涵盖了基础查询、条件筛选、比较操作、聚合计算、子查询、关联查询、集合操作和数据插入等多个方面,是学习和掌握SQL语言的重要实例。在实际数据库管理中,根据具体需求灵活运用这些语句,可以有效地管理...
例如,你可以通过INNER JOIN将两个表中的匹配记录合并,LEFT JOIN则会保留左表的所有记录,即使在右表中没有匹配项。同时,子查询可以嵌套在主查询中,用于获取满足特定条件的数据集。这样的练习将帮助你理解如何...
【SQL语句编写_试题制作脚本】 ...总之,这个SQL语句编写试题制作脚本是培养和验证软件开发者数据库操作能力的重要工具,通过各种题型全面覆盖SQL语言的基础到高级知识,有助于提高他们的数据库管理和开发效率。
本资源“oracle经典sql语句练习题和答案”提供了在scott用户下的两个典型表格——emp(员工表)和dept(部门表)的实践操作题目,旨在帮助用户提升SQL技能。 首先,让我们来了解这两个核心表格。`emp`表通常包含...
根据给定文件的信息,我们可以提炼出两个主要的SQL问题,并对这两个问题进行详细的解析与解答。 ### SQL问题一:查询每位学生及其前一位学生的成绩 #### 题目描述: 假设我们有一个表`ѧɼֶ`,该表记录了学生的...
在SQL语句强化练习中,我们可以通过一系列查询来熟悉和增强对数据库操作的理解。下面将逐一解析题目中给出的问题及示例。 1. 查询选修课程名称为'税收基础'的学员学号和姓名: ```sql SELECT S.S#, SN FROM S JOIN ...
通过比较两个不同的PC模型,找到重复出现的硬盘容量。 #### 小结 通过对这些复杂查询的学习与实践,不仅能够加深对SQL语言的理解,还能够提高解决实际问题的能力。在日常工作中,这种能力对于高效地管理与查询...
假设公司数据库中有两个表,一个是`employees`(员工)表,另一个是`departments`(部门)表。`employees`表包含字段`emp_id`(员工ID),`emp_name`(员工姓名),`dept_id`(部门ID);`departments`表包含字段`dept_id`...
**解析:** 这两个更新语句利用了`CONCAT()`和`LPAD()`函数来在学号前添加前缀"S"并填充0至12位。 以上是根据提供的文件信息整理出来的SQL知识点及其解析。这些练习涵盖了SQL语言的基础用法和一些高级技巧,对于初学...