spøkelse Skrevet 6. mars 2011 Del Skrevet 6. mars 2011 Jeg har en tabell med flere felt. Hvis jeg ønsker å se alle rader unntatt densom har felt2 = 199 i kombinasjon med felt3 = AAA, hvordan skrives det. Noe ala select * from tabell where not like (felt2 = 199 and felt3 like 'AAA') Det er sikkert en enkel løsning, men jeg har den ikke klart for meg på en natt til søndag. Lenke til kommentar
quantum Skrevet 6. mars 2011 Del Skrevet 6. mars 2011 Der var det jo en smule rotete, LIKE er for det første ment å brukes i streng-uttrykk med "jokernotasjon", dvs. du kunne feks skrevet select * from tabell where felt3 like = 'AAA%' for å få med alle rader der felt3 starter med AAA. Videre, når du bruker LIKE, som du forøvrig ikke trenger å gjøre her, så må du jo ha to operander, altså noe som man skal sjekke om er omtrent likt noe annet. Med ...where not like ... oppgir du bare en operand. Det du er ute etter er select * from tabell where felt2 <> 199 and felt3 <> 'AAA' ... dersom jeg forstår deg rett, altså alle rader unntatt de hvor både felt2= 199 and felt3 = 'AAA' på en gang. Lenke til kommentar
spøkelse Skrevet 8. mars 2011 Forfatter Del Skrevet 8. mars 2011 Takk. Grunnen til at jeg skrev "Like" er at felt tre skal være ulik 'AAA%'. Altså ikke starte med 'AAA'. Det er lenge siden jeg dreiv med SQL sist, og mente å huske at man bruker 'Like' ved string-behandling. Stemmer ikke det? Lenke til kommentar
quantum Skrevet 9. mars 2011 Del Skrevet 9. mars 2011 Jo, som sagt kan du f.eks. bruke blablabal like 'AAA%' for å sjekke om en streng starter på AAA. % betyr hvilken som helst streng _ betyr hvilken som helst char [] sekvens, f.eks. Phone LIKE '[4-6]_6%' dvs. begynner på 4,5 el. 6, 3 siffer må være 6 og så kan resten være som det vil. Lenke til kommentar
Crowly Skrevet 23. mars 2011 Del Skrevet 23. mars 2011 Hva med SUBSTR(felt3,1,3) = 'AAA' Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå