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

根据两列删除重复项

汝才良
2023-03-14
问题内容

我有这张桌子,我想用SELECT来排除标记的行。一般规则是:

  • 如果有两行或更多行,控件名与品牌名与组类型列相等
  • 然后保留组名不是“ Keine Zuordnung”的行。
CONTROLNAME   BRANDNAME   GROUPTYPES    GROUPNAME
ECU           AUDI        VERNETZER         1
ECU           AUDI        VERNETZER     Keine zuordnung    <--THIS
ECU           AUDI        FUSI          Keine zuordnung    <--THIS
ECU           AUDI        FUSI              2
ECU2          AUDI        FACHANWENDER  Keine zuordnung
ECU3          AUDI        FACHANWENDER  Keine zuordnung

请给我一点帮助吗?谢谢!


问题答案:

这是一种方法:

select t.*
from (select t.*,
             count(*) over (partition by  controlname, brandname, grouptypes) as cnt
      from t
     ) t
where cnt = 1 or groupname <> 'Keine Zuordnung';

它使用窗口函数来获取计数,然后使用awhere进行逻辑计算。



 类似资料:
  • 问题内容: 我有一个带有Year列的表,并且此列不应有重复的值。因此,我最终得到一张仅具有2007年记录的表格。 那么,如何删除具有重复年份值的行呢? 谢谢 问题答案: 我认为您可以尝试使用IGNORE添加唯一索引: MySQL应该以类似以下内容的方式进行响应: 当然,您可以将其留给MySQL来决定删除哪些行。 编辑: 这适用于任意多的列: 查看有关CREATE INDEX的MySQL文档。一个常

  • 问题内容: 我有下表,现在我需要删除具有重复的“ refID”但至少有一行与该引用对应的行,即我需要删除第4行和第5行。请对此提供帮助 问题答案: 这类似于Gordon Linoff的查询,但没有子查询: 这将使用内部联接仅删除其中另一行具有相同的refID但具有较低ID的行。 避免子查询的好处是能够利用索引进行搜索。该查询在refID + ID上使用多列索引时应表现良好。

  • 我有一个包含列和的df。我正在尝试仅为每个用户的值行后的值删除重复项 最终df

  • 问题内容: 有没有一种方法可以根据行中包含的值删除行?例如,我有一个表,其中的值在包含URL值的一列中,例如, /uk/quitclock/om2.asp /uk/quitclock/om666.wav 在这里,我需要删除后缀为WAV,GIF或JPEG的行。我怎么做?如果不可能,那么excel中是否有任何公式可以帮助我做到这一点? 问题答案: 在数据库上尝试

  • 对于包含10列的数据框,如何删除索引2以上的列。数据框如下所示: 任务是删除列3-列10

  • 问题内容: 我有两个列表需要合并,第二个列表忽略了第一个列表的重复项。..有点难以解释,所以让我展示一个代码看起来像什么,以及我想要什么的示例。 您会注意到结果具有第一个列表, 包括 其两个“ 2”值,但是second_list也具有附加的2和5值这一事实并未添加到第一个列表中。 通常,对于这样的事情,我会使用集合,但是first_list上的集合会清除它已经具有的重复值。所以我只是想知道什么是实