Discuz!NT
欢迎 游客 , 注册 | 登录 | 会员 | 界面 | 简洁版本 | 在线 | 帮助
商都网教育宝典宝库

发表新主题 回复该主题
本主题被查看410次, 共1个帖子, 1页, 当前为第1页     选择页数: 1      跳转到第   上一主题   下一主题
标题: 读取表中不重复的记录且显示全部字段
-[尕硴]
超级版主
UID: 71
来自:
精华: 130
积分: 14003
帖子: 12909
注册: 2007-10-22 17:59:00
状态: 离线
威望: 444.00
金钱: 3355.00 元
只看楼主 2008-04-11 14:20
读取表中不重复的记录且显示全部字段
问题:

  根据其中几个字段判断重复,只保留一条记录,但是要显示全部字段,怎么查询,谢谢!!

  比如
  字段1 字段2 字段3 字段4
  a    b    c      1
  a    b    c      1

  a    b    d      2
  a    b    d      3

  b    b    d      2

  想得到的结果为
  a    b    c      1
  a    b    d      2(或者3)
  b    b    d      2
  说明,根据字段1,2,3组合不重复,字段4 不考虑,得到了3个记录
  但是也要显示字段4。

  方法一:

  可以用临时表的方法来解决:
CurrentProject.Connection.Execute "drop table temptable"
CurrentProject.Connection.Execute "select * into temptable from 表2 where 1=2"
CurrentProject.Connection.Execute "insert into temptable(字段1,字段2,字段3) SELECT DISTINCT 表2.字段1, 表2.字段2, 表2.字段3 FROM 表2;"
CurrentProject.Connection.Execute "UPDATE temptable INNER JOIN 表2 ON (表2.字段1 = temptable.字段1) AND (表2.字段2 = temptable.字段2) AND (表2.字段3 = temptable.字段3) SET temptable.字段4 = [表2].[字段4];"
  方法二:

  可以直接使用一个SELECT查询筛选出需要的数据:
  可以假定第四字段都选值最小的
SELECT [1],[2], [3], Min([4]) AS Min4
FROM 表1
GROUP BY 表1.[1], 表1.[2], 表1.[3];
#1  
发表新主题 回复该主题
本主题被查看410次, 共1个帖子, 1页, 当前为第1页     选择页数: 1      跳转到第







现在的时间是 2008-10-11 22:16:38

版权所有 商都网教育宝典
         Powered by Discuz!NT 1.0.6666    Copyright © 2001-2008 Comsenz Inc.
Processed in 0 seconds