标题:怎样查询两个数据库,然后把合并的结果进行排序
取消只看楼主
zhanxinlin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:96
专家分:156
注 册:2010-5-19
结帖率:92.86%
已结贴  问题点数:100 回复次数:4 
怎样查询两个数据库,然后把合并的结果进行排序
因实际中特殊需要,现
有两个数据库   a.mdb和b.xls

a.mdb中有表   a   字段:  a1,a2
表名  a    字段a1    字段a2
值            1         c
              2         q
              3         a

b.xls中有表   b   字段:  b1,b2
表名  b     字段b1     字段b2
             2          aaa
             3          yuuu

各字段数据类型均为文本类型。其中a.mdb中表a,  a1字段的数据包含b.xls数据库表b,b1字段的数据。即a.mdb > b.xls
现使用
程序代码:
<%set rsRead=server.CreateObject("ADODB.Recordset")
rsRead.Open "select * from b",b,1,1  '读取b数据库
do until rsRead.EOF 

Set rs=Server.CreateObject("ADODB.Recordset")
sql ="select a2 from a where a1='"&rsRead.Fields("b1")&"'"
rs.open sql,conn,1,1

response.write rs("a2")&"|"
response.write rsRead.Fields("b1")&"|"
response.write rsRead.Fields("b2")&"<br>"

rsRead.MoveNext
loop%>
即已实现两个数据库的关连查询,但还有一步排序却不知道怎么做,就是按rs("a2")来排序。

那么需要实现的输出结果为:
a|3|yuuu
q|2|aaa
但现在并不能按两个数据库的查询结果来排序,代码应该怎样写?
搜索更多相关主题的帖子: 数据库 
2011-05-06 23:41
zhanxinlin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:96
专家分:156
注 册:2010-5-19
得分:0 
回复 2楼 hams
是的,正是要解决个排序问题。按现在的代码,所输出的数据并非我想要的输出结果,必须使用表格,然后复制到Excel再进行排序。如现在的输出结果为

q|2|aaa
a|3|yuuu

但我想要的却是

a|3|yuuu
q|2|aaa

当然数据库里面数量量庞大,所以还是要靠所查询后的结果再排序,曾想到用数组,却不知从何下手,也曾想过用sql语句,无奈sql基础太差。


[ 本帖最后由 zhanxinlin 于 2011-5-7 10:59 编辑 ]
2011-05-07 10:52
zhanxinlin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:96
专家分:156
注 册:2010-5-19
得分:0 
回复 4楼 lxd0980
不行的,你不知道,这条sql每次都只会查询到一条记录。而上面的那条循环就是会根据这里来输出数据的,只不过,输出后没办法再排序。
2011-05-07 11:30
zhanxinlin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:96
专家分:156
注 册:2010-5-19
得分:0 
回复 6楼 hams
b.xls中没办法先排的,因为最终要排序的数据都是从a.mdb中读取的。
2011-05-07 15:50
zhanxinlin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:96
专家分:156
注 册:2010-5-19
得分:0 
回复 7楼 hams
其实xls可以看成一个数据库,第一行看成字段名
2011-05-07 15:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-339025-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.271340 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved