将不重复的药品代码记录重新导入一个新表中

http://www.xishui.net 2004年12月06日13:06 浠水网

现有这样一个表(yfkcb 药房库存表),字段如下:
xlh(序列号),yfdm(药房代码),ypdm(药品代码),yxrq(有效日期),jg(价格)
因未定义主键,导致有许多重复的药品代码(应为一条药品代码对应一条记录),我想用一条语句将不重复的药品代码记录重新导入一个新表中,如下:
select distinct ypdm,* into temp_table1 from yfkcb
可并没如我所愿,将不重复的药品代码记录导入新表中,而是将所有记录导入新表中了,如果我用下面这句,就不会显示重复记录:
select distinct ypdm from yfkcb
可这样的话,就不能将其他字段的值选出,
请问我该如何做?

-------------------------------------------------------------------------------
select distinct 之后,再与原来的表连接。

select yfkcb.* into temp_table1
from yfkcb inner join (select distinct ypdm from yfkcb) t on yfkcb.ypdm =t.ypdm


我要将该表中的yfdm+ypdm两个字段做为主键,该如何写呢?
定义时CONSTRAINT constraint_name PRIMARY KEY(yfdm,ypdm)
发表评论
上一篇查询出最近访问的十个用户的手机号
下一篇如何选出只按一个字段不重复数据的记录
正在加载中……