Sql 用于查找非唯一行的查询在Access中无法正常工作
使用下面的代码,我试图获得不唯一的行,这些行具有相同的columnName和TableName对。表列有大约22000个值,下面的查询返回2000个值。我想得到这样的行,因为通过尝试插入这个select,我得到的错误行的值不是唯一的。通过这种方式,我希望得到这些有问题的行:Sql 用于查找非唯一行的查询在Access中无法正常工作,sql,ms-access,ms-access-2010,having,Sql,Ms Access,Ms Access 2010,Having,使用下面的代码,我试图获得不唯一的行,这些行具有相同的columnName和TableName对。表列有大约22000个值,下面的查询返回2000个值。我想得到这样的行,因为通过尝试插入这个select,我得到的错误行的值不是唯一的。通过这种方式,我希望得到这些有问题的行: SELECT ColumnName,tablename FROM columns_old group by ColumnName, tablename ha
SELECT ColumnName,tablename
FROM columns_old
group by ColumnName, tablename
having count(*)> 1;
结果已按tableName排序,我得到这样的行:
ColName TableName
coa_end_dt coa
coa_name coa
coa_num coa
coa_src_id coa
coa_start_dt coa
coa_template_id coa_tmplt
deleted_flag geog_area
........ ......
但我认为结果是这样的:
ColName TableName
coa_end_dt coa
coa_end_dt coa
coa_name coa
coa_name coa
coa_name coa
coa_num coa
....
这是怎么回事?只是想不通根据对您问题的修订,您似乎不想只看到ColumnName和tablename的哪些组合出现在多行中。您希望看到包含它们的实际行 在这种情况下,将原始查询连接回源表以仅检索匹配的行: 选择co.ColumnName、co.tablename 从…起 奥德阿斯公司 内连接 选择ColumnName、tablename 从旧的 按列名、表名分组 计数*>1的 作为子 在co.ColumnName=sub.ColumnName和co.tablename=sub.tablename上;
你是说结果包括ColName和TableName值对,它们只能在单行中找到。。。不是多行吗?这似乎是不可能的。那么这个结果到底出了什么问题呢?请设身处地为我们着想。如果不知道您的数据是什么样子,以及您想要的输出是什么,我们如何判断您的输出是否有问题?根据您对所需内容的描述,您的查询看起来不错。我正在尝试获取不唯一的行-您可以尝试解释一下自己吗?抱歉,但我仍然不明白。您能否向我们展示一组简单的示例数据以及基于该示例的查询所需的输出?