ASP高手请进,关于两个表的查询问题!
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")也可以。