20. oktober 2006 - 13:51Der er
13 kommentarer og 1 løsning
Søgefunktion?
Hej Alle
Jeg har lavet en søgefunktion, der kan finde elementer ud fra en given måned og et givent år, desværre virker den ikke helt efter hensigten. Brugeren indtaster månedStart og månedSlut samt årStart og årSlut. Meningen er så at den skal finde de elementer der opfylder BEGGE kriterier, men hvis jeg indtaset månedStart=1, månedSlut=2, årStart=2004, årSlut=2006, får jeg alle elementer fra 2004-2005-2006, og ikke kun dem fra måned 1 og 2!!
Jeg har indsat min kode nedenfor: SELECT tblSamlet.Måned, tblSamlet.År, tblSamlet.Depotsted, tblSamlet.Markedsværdi, tblSamlet.[#Transaktioner], tblSamlet.[#Annulleringer] FROM tblSamlet WHERE tblSamlet.Måned Between forms!frmSearch!maanedStart And forms!frmSearch!maanedSlut OR tblSamlet.År Between forms!frmSearch!aarStart And forms!frmSearch!aarSlut Like Trim(forms!frmSearch!maanedStart & '')='' Like Trim(forms!frmSearch!maanedSlut & '')='' Like Trim(forms!frmSearch!aarStart & '')='' Like Trim(forms!frmSearch!aarSlut & '')='';
Det skal selvfølgelig også være muligt kun at udfylde månedStart=1, og månedSlut=2 og efterlade de to sidste blanke.
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Hvis du skifter dit OR til et AND i dine Sql saetning burde det virke. Grunden til at du faar alle er fordi det i dit eksempel er det bredest kriterie der opfyldes og deftersom kun et kriterie skal opfyldes naar du har OR i din SQL vil det altid blive den der retuneres.
Nu saa jeg lige at du ville kunne efterlade blank felter ogsaa - det goer det lidt mere besvaerligt. Du skal muligvis smide en if-saetning ind efter flg princip
if maaned-felter er udfyldt then if aarsfelter udflydt then Hele SQL-saetningen else SQL kun med maaneder end if end if
Jeg kan sangtens bare få 8 og 2005. Problemet er ikke ved fastdefineret værdier, men når jeg skal have en "range" som f.eks. fra 8-10 og fra 2005-2006.
If you can send me your dB then maybe I can see the problem.
ekspertenATsanthell.dk
replace AT with @
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.