Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]如何去掉重复的记录?

yinyt  发表于:2013-04-10 22:55:26  
复制

求助:我想通过查询,将“记录集”里的记录返回“效果”所示(说明:将“订单ID”字段对应的原料批号相同的合并为一条记录,如“订单ID”为2时,对应3个“12002Y ”,则只显示一条记录,而“订单ID”为3时,对应“原料批号”为12002Y,12002Y,12003J,则只显示两条:12002Y,12003J。如何通过查询实现这一效果,敬请赐教,谢谢!我曾想到过用distinct,可整不好,不知道用什么方法啊。

 

Top
麥田 发表于:2013-04-10 22:59:41

[示例]删除重复数据并只保留一条
http://www.accessoft.com/article-show.asp?id=2652
[示例]删除重复数据并不保留重复项
http://www.accessoft.com/article-show.asp?id=7807

穆民 发表于:2013-04-10 23:38:50

如果只有这两个字段,建立查询时,选择合计-分组不就可以了。分组后两条记录如果一样就会只显示一条。如果还有其他字段就用麥田老师的示例。

比如表叫表一,查询(SQL)为:SELECT 表1.订单ID, 表1.原料批号 FROM 表1 GROUP BY 表1.订单ID, 表1.原料批号;




yinyt 发表于:2013-04-11 21:36:55

1.我不是想把重复的数据删除,我只是想让重复的多条数据只显示1条。

2.我不是想让整个字段重复的记录只显示1条,我只是想让“原料批号”字段中同一个订单ID的重复“原料批号”数据只显示1条。所以麥田老师的示例与我所要求的不符。而且我的确还有其它的字段,我上传例子大家看一下。产品追溯麻烦高手做出效果,谢谢了!



殷小宝 发表于:2013-04-12 21:50:38

分组查询即行了。



yinyt 发表于:2013-04-12 21:59:28
小宝版主:您得到的结果与我的要求不相符啊,当“订单ID“为2的时候,所用的原料只有12002Y这一种,您得到了两条记录,其实应该得到一条记录,这与我上面的效果图不符,麻烦版主再帮忙看看。

蒋元根 发表于:2013-04-14 17:43:15

供参考:

SELECT 产品追溯查询.订单ID, 产品追溯查询.原料批号

FROM 产品追溯查询

GROUP BY 产品追溯查询.订单ID, 产品追溯查询.原料批号;


点击下载此附件



whyg519 发表于:2013-04-15 10:34:01
select distinct  订单ID,原料批号 from 记录集

yinyt 发表于:2013-04-15 11:59:35

非常感谢蒋版主,在设最佳答案之前,还想问一句,为什么直接分组不可以,在查询的基础上再查询一下就可以了呢?



yinyt 发表于:2013-04-15 12:01:03
whyg519:关于distinct我也是考虑用过,对一个字段还可以,字段多了就不好使了。

殷小宝 发表于:2013-04-15 16:06:27
我在上面的回复只要去掉后面的三个字段就行了,是在“产品追溯查询”查询基础上进行分组查询的,因为只有先建立一个查询才能确定表之间的关系,没有一个表包括订单ID和原料批号这两个字段。

yinyt 发表于:2013-04-15 21:46:54
小宝版主就是以前的t-小宝吧,您也是一等一的高手,我非常崇拜,谢谢您的回复!

总记录:11篇  页次:1/1 9 1 :