Avatar billede Ulrich Seniormester
30. november 2021 - 22:35 Der er 3 kommentarer og
1 løsning

Hjælp til at sammensætte en SQL streng til MSDB.

En database hvor der er to tabeller:
Dette er et vist eksempel som bruges til at forklare hvilken sql streng jeg har brug for.

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.
Denne sql her under virker, men henter kun hvis indholdet i de to tabeller er helt ens. Det ville virke hvis IN kunne søge wildcard:
set nydataaktivitetdaysselect = conn.execute("select * from SideLinkListe WHERE SideLink IN (select SideNavn from Sideindhold WHERE HvilkenUgeDag LIKE '%" & request.form("dagselectknapper") & "%') AND VisesPaaAktivitetsSelectSide > ''")

Virker som sagt kun hvis IN var wildcard ligende, lidt ala LIKE %%

Det er det der er problemet og jeg ved ikke hvordan strengen skal laves for at den virker...
Nogen der kan hjælpe?
Avatar billede arne_v Ekspert
30. november 2021 - 23:29 #1
Lav en JOIN mellem de to tabeller med en ON ... LIKE ...
Avatar billede Ulrich Seniormester
01. december 2021 - 10:25 #2
Hej arne_v
Mange tak for din hilsen og jeg ved du før har hjulpet og har ekspertviden inden for dette.
Kunne jeg få dig til at hjælpe med at sætte den komplette SQL sammen?
Ud fra det jeg kar skrevet og det du skrive som der skal gøres?
Hilsen Ulrich
Avatar billede arne_v Ekspert
01. december 2021 - 15:26 #3
Noget a la:

SELECT *
FROM SideLinkListe JOIN Sideindhold ON SideLinkListe.SideLink LIKE '%' & Sideindhold.SideNavn & '%'
WHERE  VisesPaaAktivitetsSelectSide
AND HvilkenUgeDag LIKE '%' & request.form("dagselectknapper") & '%'
Avatar billede Ulrich Seniormester
02. december 2021 - 18:11 #4
Her er to løsninger, 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





CIO
Sådan tager top-CIO Pernille Geneser livtag med 40 år gamle it-systemer i Stark Group med 10.000 medarbejdere