如何完成以下的SQL查询?

来源:百度知道 编辑:UC知道 时间:2024/05/18 04:32:01
表如下:
ID_data1_data2
1___1_____a
2___2_____b
3___2_____b
4___3_____c
5___3_____c
6___4_____d
想去掉那些重复的data1与data2项,得到如下结果:
1___1___a
2___2___b
4___3___c
6___4___d
PS:真实表数据量大,总共有8万行左右,有80列,重复次数大概是100个,如上图,也就是a、b、c、d可能有100多次重复。
怎样快速有效的得到结果?

select min(ID) as ID, data1, data2
from table_name
group by data1, data2
这样可以吗……不知道……

如果要吧重复行删掉的话……
delete table_name
where ID not in
(select min(ID) as ID
from table_name
group by data1, data2)
我猜的,不知道对不?

需要编一个小程序来执行一下,可惜我很久没用了,现在也下子想不出来,不过我回去查查资料,应是有很好的办法的.

晕!我怎么老是碰到这种类型的问题!

今天一定要搞出来!

请等待……

select min(id),data1,data2 from biao group by data1,data2

写不出程序,不过有个思路
取出第一条记录,然后记下ID号,拿出DATA1和DATA2
然后再找到ID号不是本ID的所有DATA1等于本DATA1和DATA2等于本DATA2的记录删除就行了呗
然后取出第二条记录,然后按上面的方法去删除
其实整个下来就是个循环,在循环里执行删除命令就行了
删除过后就movenext,直到.eof

4楼的可以的

用group by也可以起到去重复的作用

提供个方法:如:(SELECT COUNT(distinct state)FROM authors)的意思是从authors里面搜索出state字段内容不重复的数量;
(如果度量值的“聚合函数”属性值为 Distinct Count,则通过以下方式计算多维数据集单元的度量值:将度量值源列中仅来自定义此单元的成员行以及这些成员后代的行中的唯一值个数进行相加。

“聚合函数”属性值为 Distinct Count 的度量值称为非重复计数度量值。非重复计数度量值可以用于对维度的最低级别成员在事实数据表中的出现次数进行计数。由于计数具有非重复