Avatar billede sorenmt84 Juniormester
27. januar 2006 - 11:47 Der er 7 kommentarer og
1 løsning

Søg efter bestemt tal i streng

Jeg har en Access db jeg bruger til at styrer en kalender... De forskellige arrangementer er vedrører ikke nødvendivis alle og derfor har hver afd et nummer, så man kan se hvem arrangementet er gældende for. Listen med nummer kunne fx se sådan her ud: 1,2,3,4,5,21,6,20,19 - i andre poster er der måske kun et tal og nogle tredje måske flere endnu osv osv...

Men jeg skal bruge et lille stykke kode, så jeg kan gå ind og finde alle de poster der fx indeholder tallet "4"  - Hvis nu tallet er er 4 er det vigtigt at det kun hver kriteriet matcher 100% altså skal den ikke tages med hvis tallet fx er 14, 40 osv...


Slutteligt skulle det gerne forbindes med mit nuværende udtræk:

strSQL = "SELECT * FROM kalender WHERE CDate(fra) = #" & dato2 & "# OR (CDate(fra) <= #" & dato2 & "# AND til is not null and CDate(til) >= #" & dato2 & "#);"
Avatar billede keysersoze Ekspert
27. januar 2006 - 11:59 #1
Ved ikke om det kan lade sig gøre i dit tilfælde men hvorfor ikke opbygge databasen korrekt? altså i stedet for sådan en nummerliste i din kalender-tabel så lav det på følgende måde;

KALENDER
id
fra
til

AFDELING
id
navn

JOIN_KAL_AFD
kal_id
afd_id

på den måde bliver det super let for dig at hive de korrekte ud.
Avatar billede sorenmt84 Juniormester
27. januar 2006 - 14:03 #2
jo helt klart, kunne jeg bestemt også godt finde på at gøre på sigt, men har jeg desværre ikke tiden til i denne omgang
Avatar billede keysersoze Ekspert
27. januar 2006 - 14:11 #3
så vil et gæt være at din sql skal være noget a la;

... (AND afd = '" & NUMMER & "' OR afd LIKE = '" & NUMMER & ",%' OR afd LIKE ',%" & NUMMER & "' OR afd LIKE '%," & NUMMER & ",%')
Avatar billede keysersoze Ekspert
06. februar 2006 - 16:29 #4
kommet videre?
Avatar billede sorenmt84 Juniormester
08. februar 2006 - 09:09 #5
Hej keysersoze... Sorry jeg ikke har fået svaret... Ja jeg har taget den beslutning at jeg laver lidt om så jeg bruger dit første eksempel, altså med at splitte det op i endnu en tabel "join_kal_afd"... Det kan jeg nemlig se et par andre fordele i også :-P...

Men gider du komme med et eksempel på hvordan jeg skal lave mit udtræk så? det er noget med injoin eller sådan noget ikke?
Avatar billede keysersoze Ekspert
08. februar 2006 - 09:13 #6
hvis du bruger access så kan du lave en forespørgsel der giver dig SQL'en - på den måde behøver ingen af os tænke :)
Avatar billede sorenmt84 Juniormester
08. februar 2006 - 10:35 #7
hehe okay.. altså bare lave en forespørgelse der laver sorteringen?
Avatar billede keysersoze Ekspert
08. februar 2006 - 10:45 #8
du behøver ikke gemme forespørgslen men hvis du påbegynder en forespørgsel kan du lave de nødvendige joins m.m. og så vælge at se den SQL access har lavet - den SQL kan du kopiere ud på din ASP-side og bruge direkte... helt uden at tænke (næsten) :)
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
Kategori
Kurser inden for grundlæggende programmering

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