这是我的桌子:

id      name         age          role
---------------------------------------
1       Rahul            20              1
2       Karan            35              0
3       Vivek            47              0
4       Shubham          40              1
5       Paras            87              1
6       Arjun            18              1
7       Ayush            28              0

我只想 Select 像我们这样年龄总和等于60岁的那两行 上表中的第一行和第四行.它的SQL查询是什么??

我试过这个

select * from form_data where age=(select age from form_data having sum(age)=60);

推荐答案

这是一个使用CROSS JOIN的用例,它使用form_data表两次,从两个表中获取每一行的组合:

SELECT *
FROM form_data a
    CROSS JOIN form_data b
WHERE a.age + b.age = 60
    -- the following condition prevents getting a combination twice
    AND a.id < b.id

Mysql相关问答推荐

括号在SQL查询中的作用?

是否有一种方法可以在mysql中设置一列,使其自动成为该行的行号的值?

如何在WooCommerce中更新pm_Virtual.meta_Value=#39;否

获取最大登录应用程序用户数以及何时

看不懂mysql自左连接查询

基于多个 where 子句在规范化表中查找公共 ID(值)

如何使用mysql更新列中的json数据

MySQL如何将字符串列表与子查询进行比较

mysql insert into select join - 通过连接表将值从一列复制到另一表

根据单个日期字段获取范围/天数

当用它的别名替换 (MAX(s.salary) - MIN(s.salary) 它将不起作用.. 为什么?

按年份范围 SQL 查询分组

MySQL查询以获取日期范围内的租赁订单

在 postgresql 中实现 UML 类:创建类型与创建表

为什么 ORDER BY 'id' 'desc' 不返回语法错误?

将 MySQL 查询的输出转换为 utf8

在 Android 上运行 AMP (apache mysql php)

Amazon RDS Aurora 与 RDS MySQL 与 EC2 上的 MySQL?

在连接条件上使用 IS NULL 或 IS NOT NULL - 理论问题

启用 NO_BACKSLASH_ESCAPES 选项时如何转义文字百分号?