Avatar billede axkris Nybegynder
12. august 2005 - 23:36 Der er 1 løsning

Sammenkøring af to avancerede sql-sætninger

Hej alle

Jeg håber, at nogle derude kan hjælpe mig med at køre disse sql-sætninger sammen til en sætning, så det hele klares i et hug (et sammenkørt recordset):

function siteDropdown()
    strSQL = "REPLACE(REPLACE(REPLACE(LEFT(URL, 7 + CHARINDEX('/', SUBSTRING(URL + '/', 8, LEN(URL) - 6)) - 1), 'https://', ''), 'http://', ''), 'www.', '')"
    strSQL = "SELECT DISTINCT " & strSQL & " AS URL FROM PLUSPROFIL_ANNONCE WHERE USEDPOINTS < ORDERPOINTS AND (URL <> '' OR URL <> NULL) AND LEN(URL) > 5 ORDER BY URL"
    Set rs = DataConn.Execute(strSQL)

    siteDropdown = "<select onchange=""document.form1.submit();"" size=""1"" name=""site""><option value="""">ALLE HJEMMESIDER</option>"

    while not rs.eof
   
        strSiteTemp = findDomain(rs("url"), "")
   
        strSQL = "SET DATEFORMAT DMY SELECT COUNT(*) AS COUNTER" & vbNewLine & _
                "FROM    KALENDER_EVENTS E LEFT OUTER JOIN" & vbNewLine & _
                "        KALENDER_DATES D ON E.ID = D.EventID" & vbNewLine & _
                "WHERE    (D.[Date] >= '01/" & navmonth & "/" & navyear & "') AND (D.[Date] <= '01/" & navmonthTemp & "/" & navyearTemp & "')" & vbNewLine & _
                "        AND URL LIKE '%" & strSiteTemp & "%' OR DESCRIPTION LIKE '%" & strSiteTemp & "%'"
        Set rs2 = DataConn.Execute(strSQL)
       
        if int(rs2("counter")) > 0 then               
            if strSite <> strSiteTemp then
                siteDropdown = siteDropdown & "<option value=""" & strSiteTemp & """>" & strSiteTemp & "</option>"
            else
                siteDropdown = siteDropdown & "<option value=""" & strSiteTemp & """ selected>" & strSiteTemp & "</option>"
            end if
        end if
        rs.movenext
    wend

    siteDropdown = siteDropdown & "</select>"
end function

Ergo; rs2 skal køres ind i rs, så koden bliver mere optimal.

Koden virker, men er bare langsom på en stor database. Mit håb er derfor, at den vil blive noget hurtigere, når det hele klares i en effektiv sql-sætning.
Avatar billede axkris Nybegynder
13. august 2005 - 12:42 #1
Lukker og slukker - kom selv lidt videre: http://www.eksperten.dk/spm/639773
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester