SQL查询根据重复值过滤行

埃迪

我有一个MS Access查询,其中显示以下数据。

在此处输入图片说明

我想编写一些SQL,该SQL在执行时显示以下结果。

在此处输入图片说明

我的规则如下,并且基于Field5

如果Field5 <>'C'中的值,则任何其他值仅显示1行。

我开始玩弄子查询并使用First运算符,但是由于表中的所有其他值都是唯一的,因此仍然显示所有行。

这是我的错误尝试:

SELECT T.Field1, T.Field2, T.Field3, T.Field4, First(T.Field5) AS FirstOfField5
FROM Table1 as T
GROUP BY T.Field1, T.Field2, T.Field3, T.Field4
ORDER BY First(T.Field5);

任何帮助都会很棒。

戈登·利诺夫

如果我们假设field1每一行都是唯一的,则可以执行以下操作:

SELECT T.Field1, T.Field2, T.Field3, T.Field4, T.Field5
FROM Table1 as T JOIN
     (SELECT t.Field5, MIN(t.Field1) as Field1
      FROM table1
      GROUP BY t.Field5
     ) as tt
     ON tt.Field1 = t.Field1 or t.Field5 = 'C';

如果您没有一行的唯一标识符,这将更加困难。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL-根据不同列中的值过滤重复行

来自分类Dev

根据2列中的值过滤出重复的行

来自分类Dev

根据mysql查询中的列值过滤行

来自分类Dev

SQL查询根据行中的值返回值

来自分类Dev

AngularJS根据日期值重复过滤项

来自分类Dev

如何根据值过滤行?

来自分类Dev

根据列的值过滤行

来自分类Dev

根据条件值重复行

来自分类Dev

根据重复值删除行

来自分类Dev

SQL查询从重复行中获取唯一值

来自分类Dev

SQL查询按值返回重复行的ID

来自分类Dev

根据SQL Server中的行值在查询中分隔列

来自分类Dev

根据SQL Server中的行值在查询中分隔列

来自分类Dev

SQL查询输出:根据字段值插入一行

来自分类Dev

根据前一行的值对 SQL 查询进行排序

来自分类Dev

sql:根据条件过滤行

来自分类Dev

SQL查询返回重复值

来自分类Dev

协助 SQL 查询 - 重复值

来自分类Dev

SQL查询ID以根据日期进行过滤

来自分类Dev

重复的行:根据条件选择行并存储重复的值

来自分类Dev

DataTables:根据列中的值过滤行

来自分类Dev

根据列中的值过滤行

来自分类Dev

根据重复的列值删除行/条目

来自分类Dev

根据列值重复行N次

来自分类Dev

熊猫:根据行值删除重复项

来自分类Dev

熊猫根据重复的行获取列值

来自分类Dev

根据列的重复值检索行

来自分类Dev

根据列值删除重复的行

来自分类Dev

根据 2 行值删除重复项