ASP高手请进,关于两个表的查询问题!

来源:百度知道 编辑:UC知道 时间:2024/06/24 04:40:18
sql1="select * from topic where best=1"
set rs1=server.CreateObject("Adodb.Recordset")
rs1.open sql1,conn,1,1

sql="select * from upfile where IF_id="&rs1("id")&"
set rs=server.CreateObject("Adodb.Recordset")
rs.open sql,conn,1,1

请问这两个查询是否能够合并为一个查询?
晕,无法修改了,上面语句有误!少了个" ,不过高手们能明白我的意思就好!
先谢谢帮忙了```

可以把两个语句合并为一个查询的:

sql="select * from topic,upfile where upfile.IF_id=topic.id and topic.best=1"
set rs=server.CreateObject("Adodb.Recordset")
rs.open sql,conn,1,1

不过读取字段和以前稍有不同
比如读取topic的id字段要用:
test=rs("topic.id")而以往只是test=rs("id")
这里要在字段前加表的名称,当然如果两个表中字段名称不重复的话,仍然可以用以前的方法:
例如topic中有字段name,而upfile中没有名称为name的字段,这时直接用rs("name")也可以。

set rs1=server.CreateObject("Adodb.Recordset")
sql1="select * from topic where best=1"
rs1.open sql1,conn,1,1

set rs=server.CreateObject("Adodb.Recordset")
sql="select * from upfile where IF_id='"&rs1("id")&"'"
rs.open sql,conn,1,1

合并的话我也没试过,不过你上页的代码是少了个",我给我改过来了,这样就可以用了where IF_id='"&rs1("id")&"'" 你就少了最后这个",而且变量"&rs1("id")&"要用''包起来,这样就不会冲突了.

不能合并

楼上说的对~~!<