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

如何在2列中查找重复项而不是1

郎和志
2023-03-14
问题内容

我有一个MySQL数据库表,其中有两列令我感兴趣。它们各自可以分别具有重复项,但是它们绝不能具有相同的值。

stone_id只要每个upsharge标题不同,就可以重复,反之亦然。但是例如说stone_id=
412和upcharge_title=“蓝宝石”,则该组合仅应发生一次。

还行吧:

stone_id = 412 upcharge_title = "sapphire"
stone_id = 412 upcharge_title = "ruby"

这不行:

stone_id = 412 upcharge_title = "sapphire"
stone_id = 412 upcharge_title = "sapphire"

是否有一个查询,将在两个字段中找到重复项?如果可能的话,是否有办法将我的数据库设置为不允许这样做?

我正在使用MySQL 4.1.22版


问题答案:

您应该在两个字段之间设置一个复合键。每行需要一个唯一的stone_id和upcharge_title。

至于找到现有重复项,请尝试以下操作:

select   stone_id,
         upcharge_title,
         count(*)
from     your_table
group by stone_id,
         upcharge_title
having   count(*) > 1


 类似资料:
  • 问题内容: 我有一张很大的桌子,上面有关于用户的以下数据。 我想在ssn等于但名称不等于的表中找到所有可能的重复项 我的尝试是: 问题答案: 在SSN上进行分组应该做到这一点 ~~~~ ..或如果每个ssn有很多行,而只想查找重复的名称) 编辑,糟糕,被误解

  • 我想知道如何实现以下操作:我有两个arraylists,其中的值相互关联。也就是说,同一索引上的arraylists的元素彼此相关。例如:ArrayList1(String ArrayList)=[id1,id2,id3,id2,id2,id1]。ArrayList2(整数ArrayList)=[2,3,2,5,6,3]。 我想创建2个新的arraylists与重复的值不再存在。在上面的例子中,新

  • 问题内容: 我有一个人员,我想查找重复的条目,以约束除以外的所有字段。因此,请使用-method(并因此使用),因为它们已考虑在内。 修改和方法以忽略该字段不是一种选择,因为代码的其他部分依赖于此。 如果我想忽略该字段,Java中最有效的方法是对重复项进行分类? 问题答案: 构建一个以实现您的自然键排序,然后使用基于二进制搜索的重复数据删除。即可为您提供这种能力。 请注意,必须满足通常的反对称性,

  • //想象所有字段的getter和setter。 我用上面的方法来测试Menuplan是否已经分配了给定的食谱(作为点心或食谱)。 我想知道是否有更优雅/更短的方法来编写函数。

  • 问题内容: 我有一张棒球运动员的桌子(全部1000人左右),其中包括: 但是我认为有些球员已经加入了两次。我该如何检查特定姓氏,姓氏组合的出现次数? 问题答案: 这提供了重复项列表: 如果要查看每一行的计数,请删除hading子句: