当前位置: 首页 > 面试题库 >

如何在MySql中返回具有相同列值的行

魏旭
2023-03-14
问题内容

让我们考虑下表-

ID Score
1  95

2  100

3  88

4  100

5  73

我是一个SQL新手,但是如何返回同时包含ID 2和ID 4的分数?因此,由于ID 2和ID 4中均包含该字符,因此应该返回100


问题答案:

这是“组内集”查询的示例。我建议使用该having子句进行聚合,因为这是最灵活的方法。

select score
from t
group by score
having sum(id = 2) > 0 and -- has id = 2
       sum(id = 4) > 0     -- has id = 4

这是在按分数汇总。然后,having子句(sum(id = 2))的第一部分是计算每个分数有多少个“ 2”。第二个是计算多少个“
4”。仅返回分数为“ 2”和“ 4”的分数。



 类似资料:
  • 问题内容: 我的表是: 我想列出一组具有相同疾病的患者。pid和did分别是患者和疾病表中的主键,并且是has_disease表中的外键。 样本数据: 耐心 疾病 has_disease 以上数据的答案是因为它们具有完全相同的疾病1和3,即疟疾和病毒热。我想知道如何在mysql中实现这一点。 。 问题答案: 该查询返回给我们患者及其疾病。 通过完整的剂量列表比较2组患者,并将pid保留为相同的剂量

  • 问题内容: 在[成员]表中,某些行的列值相同。 有些人使用了不同的login_id,但是使用了相同的电子邮件地址,因此在此列上未设置唯一约束。现在,我需要查找这些行,并查看是否应将其删除。 我应该使用什么SQL语句查找这些行?(MySQL 5) 问题答案: 此查询将为您提供电子邮件地址及其使用次数的列表,最常用的地址在前。 如果要完整行:

  • exTab 如何使用SQL(与mySQL一起)只返回col1中具有多个相同值、col2中具有多个相同值、但COL3中具有唯一值的行? 例如,在上面的表(exTab)中,val1在col1中出现了4次,对于这4次,val4在col2中出现了3次,但是对于这3次,val7在col3中只出现了一次,所以我想返回这一行(第1行)。考虑到这些条件,第1行将是我希望从此表返回的唯一一行。 我试过和group

  • 问题内容: 我有两个表,关键字和数据。 表关键字具有2列(id,关键字),表数据具有3列(id [keywords.id的外键,名称,值]。 我正在使用此查询: 它返回类似: 每个id的值可以为0到3(将来可能会更多)。 如何在同一行中检索具有相同ID的所有行? 喜欢 我想这样做是因为我希望能够对值进行排序。 问题答案: 像这样使用: 另外,您可能需要根据需要获取确切的值顺序。像这样:

  • 问题内容: 我确信必须有一个相对简单的方法来执行此操作,但是此刻正在使我逃脱。假设我有一个这样的SQL表: 现在,我想知道A和B列的每种值组合出现多少次,而与其他列无关。因此,在此示例中,我想要这样的输出: 用什么SQL来确定呢?我觉得这绝对不是一件很不常见的事情。 谢谢! 问题答案:

  • 问题内容: 我试图找到具有重复值,但仅基于选定的列数,而不是单个列或整个行的行。例如,如果我的表如下所示: 我的问题是: 查找行的“地址和状态”字段与另一行的“地址和状态”字段匹配的行的所有ID。 该查询的答案将是: 有任何想法吗? 意见建议: 如何从单个表中选择同一行中的多列值 问题答案: 请尝试以下方法: