Hur ser tabellerna ut? Och framförallt hur tänker du?
Om du har Företaget F och det inte finns med i de sökkriterier du skriver in, så ska det ju inte komma ut? Så vad är problemet?
1 svar · 256 visningar · startad av tosses
Jag har problem med en sql-sats i jsp.
tanken är att man ska kunna urval från 5 olika tabeller.
Här är frågan:
SELECT fo.REDNAMN, ae.BEN, sni92.Fenkelbranch, nykos.område, bolagstyp.bolagstyp, stkl.TEXT
FROM stkl RIGHT JOIN (bolagstyp RIGHT JOIN (sni92 RIGHT JOIN ((nykos RIGHT JOIN ae ON nykos.CFARNR = ae.CFARNR) LEFT JOIN fo ON ae.PEORGNR = fo.PEORGNR) ON sni92.Kod = ae.NG1) ON bolagstyp.bolagskod = fo.JURFORM) ON stkl.STKL = fo.STKLA
WHERE (((fo.REDNAMN) Like "*") AND ((sni92.Fenkelbranch) Like "*") AND ((bolagstyp.bolagstyp) Like "*") AND ((stkl.TEXT) Like "*")) OR (((ae.BEN) Like "*"));
Kruxet är att frågan funkar bra, men inte vilkoren.
i tabellen ae finns 11019 företag. Det stämmer så länge jag inte ställer vilkor. (även %% vilkor) Då finns det bara 5007 företag.
anledning... antagligen finns data i de andra tabellerna som inte har motsvarighet i ae och när man ställer ett vilkor i en av dessa tabeller försvinner en massa företag som inte har relaterad data.
Krux2: i JSP måste det finnas vilkor inlagda redan från början ex:
and stkl.STKL like '%"+request.getParameter("stkl")+"%'
Även om request.getParameter("stkl") är tom så måste den ingå i sqlfrågan.
P.g.a. detta funkar inte frågan.
för om man ställer vilkoret att db ska hitta * i en av relaterade tab, så måste det finnas relaterade data i ae.
Undrar om någon har nåt förslag hur man skulle kunna lösa detta. (Om nån fattar min dåliga förklaring)
jag blir evigt tacksam!!!
Hur ser tabellerna ut? Och framförallt hur tänker du?
Om du har Företaget F och det inte finns med i de sökkriterier du skriver in, så ska det ju inte komma ut? Så vad är problemet?