问一个SQL问题 如何将指定字段的重复记录去掉(在线等 解决就给 40分)
问题是这样的 :
我有一张表
商品名称 审核 条形码 问题批次 登记时间
没有名称 -1 6901028300056 NULL 2007-02-03 13:43:20.000
椰岛鹿龟酒精制 1 6901160001507 NULL 2007-01-24 00:00:00.000
健儿消食口服液 1 6901235894454 NULL 2007-02-03 13:48:37.000
舒肝降脂胶囊 3 6901235897453 0603561 2007-02-03 13:34:51.000
舒肝降脂胶囊 3 6901235897453 0603561 2007-02-03 13:42:39.000
布洛芬口服液 0 6901235897455 NULL 2007-02-05 10:51:15.000
西瓜霜润喉片 0 6901235897456 NULL 2007-02-05 10:47:36.000
500ml海天铁 1 6902265051015 NULL 2007-02-03 13:46:21.000
雅士利v鱼 0 6902402030392 NULL2007-02-0511:06:54.000
眩晕宁( 0 6902589647123 NULL2007-02-03 13:51:38.000
玉龙银丝面 0 6904442000113 NULL 2007-01-25 00:00:00.000
玉龙银丝面 0 6904442000113 NULL 2007-02-05 11:05:56.000
牛磺酸颗粒 0 6904586785412 NULL 2007-02-03 13:49:41.000
牛磺酸颗粒 0 6904586785412 2007-02-08 18:34:00.000
牛磺酸颗粒 0 6904586785412 2007-02-08 19:27:00.000
牛磺酸颗粒 0 6904586785412 2007-02-09 10:05:00.000
大家看下表会发现 有些条形码是相同的 现在我老板想让我 只保留 一条最新的
就是说 条形码不能重复 而且保留的那一条是最新的记录 就高手帮忙解决啊
------解决方案--------------------SELECT 商品名称,审核,条形码,问题批次,登记时间 FROM Dv_Test INNER JOIN
(SELECT DISTINCT(条形码) AS dist_code,MAX(登记时间) AS max_time FROM Dv_Test GROUP BY 条形码) AS seartable ON
seartable.dist_code = Dv_Test.条形码 AND seartable.max_time = Dv_Test.登记时间
试一下,经我测试是没有问题的,时间取的最新时间,行了给分哟。呵呵