25. oktober 2000 - 13:22Der er
1 kommentar og 1 løsning
Dynamisk LIKE op
Jeg ønsker at videregive et uvist antal argumenter til en query med LIKE, f.eks.:
SELECT P.pid FROM Publikationer P WHERE P.name LIKE %arg1% OR P.name LIKE %arg2% AND P.name LIKE %arg3% o.s.v. hvor antallet af args altså ikke kendes på forhånd.
Jeg har på fornemmelsen at der en standard syntaks til dette, hjælp til web-sider der kan afhjælpe problemmet eller konkrete forslag (skal kunne implementeres i Oracle) er velkomne. Det behøvs f.eks. ikke være v.h.a. LIKE, men muligvis via en anden metode... mvh Strato :)
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Du skal vist bruge LIKE. Du opbygger selv strengen i en varchar2() og konkatenerer bare løs. Hernæst afhænger det af versionen. DBMS_SQL pakken skal bruges ved tidligere versioner, men version 8 har en EXECUTE IMMEDIATE som kan bruges
Jeg er ikke sikker på at jeg forstår dig ret. Givet et tuple hvor et element f.eks. er en ordliste, emneord el.lign. Søgningen skal finde netop det tuple i tabellen hvor alle ord, hver for sig, eksisterer. Altså noget svarende til:
SELECT P.pid FROM Publikationer P WHERE P.name LIKE %søgeord1% INTERSECT SELECT P.pid FROM Publikationer P WHERE P.name LIKE %søgeord2% INTERSECT o.s.v. Balladen er så bare at antallet af søgeord skal afgøres dynamisk...
Jeg så et hav af avancerede options til O8i deriblandt tekst baserede søgeværktøjer såsom NEAR ...
Men tak for hjælpen so far. Jeg forsøger naturligvis selv at finde dokumentation på dit foreslag...
Synes godt om
Ny brugerNybegynder
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.