不显示重复数据

[复制链接]
查看11 | 回复4 | 2012-1-4 11:49:54 | 显示全部楼层 |阅读模式
select * from ypjbxxb,yprkxx where ypjbxxb.yaopbh=yprkxx.yaopbh(+)
得到如下数据
药品编号 分类名称
规格序号 规格剂型序号剂型 生产厂家序号
生产厂家
价格
00000001西药 青霉素
001 板
001 冲剂
001
吉林省集安益盛药业股份 12.000
00000001西药 青霉素
001 板
001
冲剂
001
吉林省集安益盛药业股份 12.000
00000001西药 青霉素
002 400u 001 冲剂
001
吉林省集安益盛药业股份 12.000
00000001 西药 青霉素
002 400u 003 胶囊
001
吉林省集安益盛药业股份 12.000
00000021西药 青霉素V钾片
00000022西药 红霉素片
00000023 中成药 莲花清瘟胶囊
如何可以不显示相同记录(药品编号,分类,规格序号,剂型序号,生产厂家序号,价格任何一项不相同的可以认为是不相同的记录)得到以下记录
药品编号 分类名称
规格序号 规格剂型序号剂型 生产厂家序号
生产厂家
00000001西药 青霉素
001 板
001 冲剂
001
吉林省集安益盛药业股份 12.000
00000001西药 青霉素
002 400u 001 冲剂
001
吉林省集安益盛药业股份 12.000
00000001 西药 青霉素
002 400u 003 胶囊
001
吉林省集安益盛药业股份 12.000
00000021西药 青霉素V钾片
00000022西药 红霉素片


回复

使用道具 举报

千问 | 2012-1-4 11:49:54 | 显示全部楼层
distinct
回复

使用道具 举报

千问 | 2012-1-4 11:49:54 | 显示全部楼层
有点乱~怎么最后一行的中成药没有了哩~这个应该带上吧~用楼上的直接*前直接加distinct应该就可以了!
回复

使用道具 举报

千问 | 2012-1-4 11:49:54 | 显示全部楼层
用分析函数 row_number () over (partition by ...)
可以的
回复

使用道具 举报

千问 | 2012-1-4 11:49:54 | 显示全部楼层
自己根据这个去改吧
DELETE FROM bk_productaudit_queue
WHERE ROWID IN (SELECT rid

FROM (SELECT ROWID rid,

row_number() over(PARTITION BY q.itemcode, q.insertdate, q.source, q.operatortime, q.autoaudittime ORDER BY q.insertdate) row_flag

FROM bk_productaudit_queue q) t

WHERE t.row_flag > 1)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行