Avatar billede Ulrich Seniormester
25. november 2021 - 21:51 Der er 3 kommentarer og
1 løsning

Trække ud fra to tabeller i samme database.

Jeg har lavet denne og den virker, men jeg har brug for en LIKE %% funktion i stedet for IN.
set nydataaktivitetdaysselect = conn.execute("select * from SideLinkListe WHERE SideLink IN (select SideNavn from Sideindhold WHERE HvilkenUgeDag LIKE '%" & request.form("dagselectknapper") & "%')")


I teori skal det være som her under:
Først:
a = vælg SideNavn fra tabel SideIndhold hvor HvilkenUgeDag er LIKE 'Mandag'
Der efter:
b = vælg * fra tabel SideLinkListe hvor SideLink LIKE %a% AND VisesPaaAktivitetsSelectSide > ''
Så skal b i loop for at liste indholdet
Do while not b.EOF
Avatar billede claes57 Ekspert
26. november 2021 - 08:17 #1
kan det ikke bare skydes ind fra
...tknapper") & "%')")
til
...tknapper") & "%' AND VisesPaaAktivitetsSelectSide)")
Avatar billede Ulrich Seniormester
26. november 2021 - 10:21 #2
SideNavn skal findes i SideLink og det gør det med IN hvis begge er helt ens fx:

SideNavn = abc og SideLink = abc

Men hvis det er fx:

SideNavn = abc og SideLink = abc/def så kommer der intet resultat.

Derfor er det at jeg er ude efter af IN skal virke som LIKE %% eller en anden måde at skrive strengen på.
Avatar billede Ulrich Seniormester
26. november 2021 - 17:10 #3
En database hvor der er to tabeller:

Først skal der søges i den ene tabel:
a = select SideNavn from Sideindhold WHERE HvilkenUgeDag LIKE '%" & request.form("dagselectknapper") & "%'

Der efter skal resultatet a bruges til at finde i den anden tabel:
b = select * from SideLinkListe WHERE SideLink LIKE %a% AND VisesPaaAktivitetsSelectSide > ''

Så skal b i loop for at liste indholdet
Do while not b.EOF

Men, men, det skal være i en samlet SQL streng for at det hele hentes samtidigt, ellers er det kun en record der hentes,
og det virker med denne:
set nydataaktivitetdaysselect = conn.execute("select * from SideLinkListe WHERE SideLink IN (select SideNavn from Sideindhold WHERE HvilkenUgeDag LIKE '%" & request.form("dagselectknapper") & "%') AND VisesPaaAktivitetsSelectSide > ''")

Meeen ikke helt, for der bliver ikke søgt med wildcard ved IN som der gør med LIKE %%

Det er det der er problemet og jeg ved ikke hvordan strengen skal laves for at den virker...
Avatar billede Ulrich Seniormester
02. december 2021 - 18:11 #4
Her er løsning, begge virker:

set nydataaktivitetdaysselect = conn.execute("SELECT SideLinkListe.* FROM SideLinkListe INNER JOIN Sideindhold ON SideLinkListe.SideLink LIKE '%' + Sideindhold.SideNavn + '%' WHERE  VisesPaaAktivitetsSelectSide > '' AND HvilkenUgeDag LIKE '%" & request.form("dagselectknapper") & "%'")

set nydataaktivitetdaysselect = conn.execute("SELECT sl.* FROM SideLinkListe sl INNER JOIN Sideindhold si ON (sl.SideLink LIKE '%'+si.SideNavn+'%') WHERE VisesPaaAktivitetsSelectSide > '' AND si.HvilkenUgeDag LIKE '%" & request.form("dagselectknapper") & "%'")
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

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