我现在很困惑,如果有人能在这里帮助我,我会很高兴,我希望从table1中选择的值与table2的值一起显示,但table2的输出给了我同样的3条记录,而不是只为sql2输出3条记录。
如果我在sql分析器中输入这两个查询,它就可以正常工作。目标是使用经典的asp在3行单循环中获得sql1和sql1的输出:
line1 rs("firstname") & space(1) & rs("boss")
line2 rs("firstname") & space(1) & rs("boss")
line3 rs("firstname") & space(1) & rs("boss")过程:我首先要做一个查询( sql1 ),之后是(sql2),这取决于sql1的结果
table1
id| |user| |firstname| |lastname| |acc|
1 user1 firstname1 lastname1 loc1
2 user2 firstname2 lastname2 loc2
3 user3 firstname3 lastname3 loc3
4 user4 firstname4 lastname4 loc1
5 user5 firstname5 lastname5 loc1
table2
id| |boss| |first_name| |username|
1 boss1 boss1email user1
2 boss2 boss2email user2
2 boss3 boss3email user3
2 boss4 boss4email user4
2 boss5 boss5email user5
sql="select * from table1 where acc='loc1'"
Set rs=dbcon.Execute(sql)
do until rs.EOF
Response.Write rs("firstname")
Set rs1 = server.CreateObject ("adodb.recordset")
sql2="Select * from table2 where username='user1'"
set rs1=dbcon.execute(sql2)
do until rs1.eof
response.write rs1("boss")
rs1.movenext
loop
rs.movenext
loop<发布于 2013-01-08 11:01:06
为什么不呢:
SELECT t1.firstname, t2.boss FROM table1 t1
JOIN table2 t2 on t1.user = t2.username
WHERE t1.acc ="loc1"发布于 2013-01-08 12:45:30
我已经使用了view函数,并保存了它,并使用asp调用它。
发布于 2013-01-08 22:38:46
在您的代码中,您似乎需要替换此行中的
sql2="Select * from table2 where username='user1'"带有一些对rs的引用的'user1‘(“用户名”)。使用您拥有的代码,对于table1的每一条记录,您将从table2获得相同的记录。
https://stackoverflow.com/questions/14207488
复制相似问题