我有这两个表:
学生:
| name | email |
|---------------------|-------------------------|
| Arturo Vidal | arturo.vidal@usm.cl |
| Bastian Quezada | bastian@usm.cl |
| Javier Jeria | javier@usm.cl |
| Sebastian Pi帽era | sebastian@presidente.cl |
| Sebastian Gallardo | sebastian@usm.cl |
班级:
| classId | email | signUpDate |
|---------|-------------------------|-------------|
| 1 | sebastian@usm.cl | 2018-01-01 |
| 1 | javier@usm.cl | 2019-10-01 |
| 1 | bastian@usm.cl | 2018-07-01 |
| 2 | sebastian@usm.cl | 2018-05-04 |
| 2 | bastian@usm.cl | 2018-01-01 |
| 3 | bastian@usm.cl | 2018-12-05 |
| 3 | sebastian@usm.cl | 2018-02-01 |
| 4 | arturo.vidal@usm.cl | 2018-03-01 |
| 5 | sebastian@presidente.cl | 2018-03-01 |
我想给这个名字显示最后一个注册每个classId的学生的名字。这意味着,我应该为classId 1获得一个名称,为classId
2获得一个名称,以此类推。首先获取邮件(之后才知道学生的名字)的解决方案是:
select classId, email, max(signUpDate)
from Class
group by classId
它会打印最大日期,这是可以的,但同时也会为每个日期打印错误的邮件:
| ClassId | email | max(signUpDate) |
|---------|-------------------------|-----------------|
| 1 | sebastian@usm.cl | 2019-10-01 |
| 2 | sebastian@usm.cl | 2018-05-04 |
| 3 | bastian@usm.cl | 2018-12-05 |
| 4 | arturo.vidal@usm.cl | 2018-03-01 |
| 5 | sebastian@presidente.cl | 2018-03-01 |
这是完全错误的()。因此,当我尝试加入用于获取名称的值时,会得到不正确的值。
换句话说,我不明白为什么行混合在一起。是否有任何解决方案可以为每个ClassId的max(signUpDate)获取正确的电子邮件?
谢谢你的时间
我创建了测试数据小提琴,并进行了简单易懂的查询以获取所需的数据,即:
SELECT DISTINCT classId,
std.name,
Class.email,
signUpDate
FROM CLASS
INNER JOIN Student std ON std.email = Class.email
WHERE signUpDate IN
(SELECT max(signUpDate)
FROM CLASS
GROUP BY classId)
SQL小提琴在这里
问题内容: 我有一个如下查询: 结果如下:中心名称和交换数量 我喜欢从此结果(第二行)中选择最大值,除了排序和选择第一行之外,还有谁能帮助我进行MAX查询。 问题答案: 那应该工作
我想在hibernate中选择最大日期,但出现以下错误: Java语言sql。SqlSyntaxerRorexException:ORA-00932:不一致的数据类型:预期的时间戳得到的数字 查询是: 数据库是oracle。数据库中该字段的类型为时间戳(6)
问题内容: 我有一个名为faq_questions的表,其结构如下: 我试图建立一个给定排序顺序的查询,选择具有最高排序顺序的行。 例子: 好的,假设我为已知的排序顺序(id 4)输入了5,我需要它返回ID为3的行。由于不能保证sort_order是连续的,所以我不能只选择known_sort_order + 1。 谢谢! 问题答案: 似乎太简单了,但是看起来像您所需要的:
我刚开始冬眠。我有两张桌子,有一对多的关系。有两个表格: 这是一个父类,它与图像表有一对多关系 现在我想使用父类的id(即:pashminaId)从类中选择一个 如: 选择IMAGE_NAMETBL_IMAGEPASHMINA_ID='some_digit'; 我怎么能在图像类中传递pashminaId,因为没有它只有一个父类的对象创建。 那么,我如何在Hibernate中实现这一点? 谢谢!希望
本文向大家介绍使用MySQL子查询选择年龄最大的所有用户?,包括了使用MySQL子查询选择年龄最大的所有用户?的使用技巧和注意事项,需要的朋友参考一下 让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 以下是查询以选择具有最大年龄值的所有用户- 这将产生以下输出-