26. marts 2013 - 13:47Der er
15 kommentarer og 1 løsning
SELECT til søgefunktion
Jeg er i gang med en søgefunktion, hvor man kan søge på profiler. Profilerne skal findes på baggrund af hvilke kategorier og områder man har valgt i søgefunktionen.
Jeg skal altså have lavet en database-forespørgsel, der går ned i 2 tabeller (profileCategories og profileAreas) og finder de profiler som eksisterer i dem begge.
profileCategories indeholder kolonnerne: 'id', 'ProfileId', 'CategoryId' profileAreas indeholder kolonnerne: 'id', 'ProfileId', 'AreaId'
Har man valgt området Ribe(som f.eks har id 30) og kategorien IT(som f.eks har id 50) i søgefunktionen, skal jeg selecte alt i tabellen profileCategories hvor 'CategoryId' er 50 og herefter finde ud af om samme profil eksistere i tabellen profileAreas hvor 'AreaId' er 30.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jeg kunne selvfølgelig starte med at finde alle i profileCategories hvor CategoryId=50 og derefter loope alle rækker igennem for at finde ud af om det samme profileId ligger i profileAreas hvor fldAreaId=30, men det performer nok rimelig skidt.
Kan godt forstå, hvis der er sort snak.. Har lidt svært ved at forklare mig, når jeg selv er ret lost. ;)
SELECT * FROM profileCategories JOIN profileAreas ON profileCategories.ProfileId=profileAreas.ProfileId WHERE profileCategories.CategoryId=50 AND profileAreas.AreaId=30
SELECT * FROM tblAdsCategories JOIN tblAdsAreas ON tblAdsCategories.fldAdId=tblAdsAreas.fldAdId WHERE tblAdsCategories.fldCategoryId IN(16, 19, 20) AND tblAdsAreas.fldAreaId=7
Returnerer 0 rækker.
I virkeligheden er der 1 AdId som kvalificerer sig. (ad id 1141)
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.