Gå til innhold

SQL: NOT LIKE 1 eller 3 eller 8


Anbefalte innlegg

Skrevet

Et kjapt spørsmål. Har en sql setning:

...FROM "table"WHERE id NOT LIKE '16'

 

Hvordan legger jeg til mer flere alternativ enn 16? Jeg vil ha WHERE ID NOT LIKE 16 eller 14 eller 39...

 

Hvordan skriver jeg det? Med en |? Eller Or?

Videoannonse
Annonse
Skrevet

Hmm. er det noen enklere måter? Blir en ekstremt lang setning siden alt må repeteres (har en del ID'er som skal ekskluderes)

 

noe komma separert ville vært det beste:

 

WHERE ID !=1,3,5,33,77,85...

Skrevet

Det kan du jo legge til i en while() funksjon.

 

Lagre alle id'ene som ikke skal være med i en array

$IkkeMed = array(1,3,5,33,77,85);

 

$query = ...WHERE id != ".$IkkeMed[0];

 

$i = 1;

while($IkkeMed[$i]){

 

$query .= " AND id != ".$IkkeMed;

 

$i++;

 

}

 

$query .= ";"; // legger til ; på slutten av spørringen

 

 

NB: jeg har ikke testet denne koden så det er sikkert noen små feil der eller ting som må tilpasses - men du skjønner sikkert hvordan du lett kan fikse problemet.

Skrevet

Du kan lage arrays i MySQL og. Noko slikt som

 

WHERE id NOT IN (1, 2, 3, 4)

skal virke.

 

Om du skal begrense ei rekke med tall, kan du gjere slik;

 

WHERE id NOT BETWEEN 7 AND 10

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...