循环结果集以运行另一个查询

时间:2015-07-02 12:35:18

标签: sql loops asp-classic

我通常用PHP和MySQL编写代码,因此相对较新的问题。

我有一个结果集ms。我想遍历ms并在ASP中运行另一个SQL来运行另一个SQL查询,并根据cs的值获取另一个结果集ms('m_id')

MS是一个数组,CS应该作为数组返回

这就是我所拥有的:

do while not ms.eof

    msql1 = "SELECT m_id, m_code, m_title, m_works, m_features FROM m LEFT JOIN b_m AS bm ON bm.m_id_fk = m.m_id WHERE bm.b_id_fk = 24 ORDER BY m.m_id"
    Set ms = Con.Execute(msql1)

    do while not ms.eof

    msql2 = "SELECT c.course_id, c.course_title, c.course_hours, cm.m_id_fk FROM c LEFT JOIN m_c AS cm ON cm.c_id_fk = c.c_id WHERE cm.m_id_fk = '"&ms("m_id")&"'"
    Set cs = Con.Execute(msql2)
    ms.movenext
    loop

首先,我希望能够根据ms结果集中的循环检索CS结果集。

其次我希望能够使用循环在页面上吐出整个CS结果集 - 我目前无法做到这一点。

然后是第三个也是最后一个,我想获得'ms'的第一个rs并吐出<%= ms(“m_works”)%>或者在需要和要求的任何其他权利。

我非常感谢你的帮助,我已经在这3天了,并且已经达到了新的挫折程度。

干杯!

修改

请帮助我看看我的目标吗?

    <%msql1 = "SELECT module_id, module_code, module_title, module_works, module_features FROM module LEFT JOIN bundle_module AS bm ON bm.module_id_fk = module.module_id WHERE bm.bundle_id_fk = 24 ORDER BY module.module_id"
    Set ms = Con.Execute(msql1)%>

<%Do Until ms.Eof %>
     <% response.write ms("module_title") %>
        <%  msql2 = "SELECT course.course_id, course.course_title, course.course_hours, cm.module_id_fk FROM course LEFT JOIN module_course AS cm ON cm.course_id_fk = course.course_id WHERE cm.module_id_fk = '"&ms("module_id")&"'"
    Set cs = Con.Execute(msql2)%>
        <%response.write cs("course_title") %>

        <%Do Until cs.Eof%>

            <%response.write cs("course_title")%>

            <%cs.MoveNext
        loop%>
        <%ms.movenext
    loop%>

哪个是正确的轨道,因为我的RS吐出来了!谢谢你们a)让我思考并且b)指出我某种正确的方向和c)因为苛刻,我只是一个男人!

0 个答案:

没有答案