注册 登录
编程论坛 ACCESS论坛

求助 :如何建立查询显示附件中最新的版本号?

lihaolun 发布于 2010-10-23 12:45, 1487 次点击
大家好,我是新手。
求助高手,下面的附件中“表1”的数据,如何建立查询同样的“物料编码”只显示最新的版本号。版本号数值越大为越新!
只有本站会员才能查看附件,请 登录
21 回复
#2
lihaolun2010-10-23 12:49
求助高手啊!我是个菜鸟哈!谢谢大家了!
#3
筱晓绾2010-10-23 12:57
发个文本文件过来看下,记事本之类的。。。
#4
lihaolun2010-10-23 13:03
ID    物料编码      版本号
1      0001           1
2      0001           2
3      0002           1
4      0002           2
5      0002           3
6      0003           4
7      0003           6
求助怎样建立查询可以只显示最新的版本号,版本号数值越大为越新!
#5
筱晓绾2010-10-23 13:05
根据ID降序排列。。。
#6
筱晓绾2010-10-23 13:07
SELECT * FROM 表名 ORDER BY ID DESC
#7
lihaolun2010-10-23 13:14
不好意思。不是排序。是建立一个查询后,把“版本号”中低的版本号屏蔽掉!这该怎么做啊????
#8
筱晓绾2010-10-23 13:18
Top吧 看你要显示几条就Top几个数 示例:SELECT Top 10 * FROM 表名 ORDER BY ID DESC  其中的10可以根据需要改变。。。你可以试试。。。
#9
lihaolun2010-10-23 13:29
兄弟!我是想把版本号低的在查询中屏蔽掉。不是让ID显示几条。是“版本号”
比如: 0001这个物料编码有1和2两个版本号,我只想显示2.   0003有4和6两个版本号,那就把4屏蔽掉。这样该怎么做啊?谢谢!
#10
lihaolun2010-10-23 13:53
求高手解答,谢谢!
#11
筱晓绾2010-10-23 13:54
哦,那是我理解错误。不晓得你有没有解决,我再提出一种想法:SELECT MAX(版本号)as 版本号,物料编码 FROM 表名 GROUP BY 物料编码 。这只是将最大的版本号及物料编码查出来,只会有一条数据。至于你说的屏蔽,不晓得你的意思是把小版本号删掉还是标识为不可用,如果是那样的话,那数据库中还应该加一个标识字段吧!标识Status它是否被屏蔽。。。
#12
lihaolun2010-10-23 14:02
非常感谢,我说的屏蔽不是删除,是不让它在查询中显示。在表中显示!
#13
lihaolun2010-10-23 14:04
再次非常感谢 筱晓绾 大哥,学习了。我很菜很菜的!谢谢!
#14
筱晓绾2010-10-23 14:06
搞定了么?最后补充一下,我不是大哥。。。接触了这么大半天,还叫我大哥,看来我真的挺失败滴!!!
#15
lihaolun2010-10-23 15:46
感觉还是不对。如果只判断这2个字段就可以。如果加上其它的字段就不行了。能不能加上其它字段后还是只让它判断“物料编码”的版本号!
#16
筱晓绾2010-10-23 15:56
      select Max(版本号)as 版本号,物料编码 ,物料名称... from 表名 Group by 物料编码,物料名称...
具体请查看Group by 的用法(分组)
#17
lihaolun2010-10-23 16:00
对的,我就是这样加的。加完以后不光是判断物料编码的版本号,连其它字段的一起判断了。比如也判断“物料名称”版本号,但我只让它判断物料编码的!哪里弄错了?呵呵,我很菜的!
#18
筱晓绾2010-10-23 16:07
那你就做联合查询吧
#19
筱晓绾2010-10-23 16:08
QQ号发我,我加你。。。备注:编程论坛
#20
lihaolun2010-10-23 16:13
307563
#21
longerth2010-12-01 10:01
查询最大值(MAX)并显示
#22
lihb19972010-12-25 16:42
<%
myprc = Request.form("keywords")    'keywords为你从表单<form action=""...>传送来的查询关键词
Set rs = Server.CreateObject("ADODB.RecordSet")
  '读取查询信息
  sql = "Select top 1 * From 表名 Where 物料编码 = '"& myprc &"' order by 版本号 desc"
  Set rs = Conn.Execute(sql)
  if not rs.eof or not rs.bof then
  Do While Not rs.EOF
%>
1