Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem: NOT LIKE
Forum PHP.pl > Forum > Bazy danych > MySQL
Marusz
Witajcie

Chcialbym, aby MySQL pobral mi rekord, w ktorego ciagu znajduja "maxtor" oraz "diamond" po czym odrzucil wszystkie, w ktorych znajduja sie ciagi jak "atlas" oraz "serial".

No i napisalem:

[sql:1:42cfa5f584]
SELECT * FROM prices WHERE name LIKE '%maxtor%diamond%' AND name NOT LIKE '%atlas%serial%'
[/sql:1:42cfa5f584]

I niestety nie diala odrzucenie. Jesli wpisze aby odrzucil TYLKO "atlas" to idzie dobrze, natomiast jak dopisze "serial" to umiera i wyrzuca mi wynik zapytania i z jednym i z drugim slowem. Gdzie popelniam blad?
kszychu
[sql:1:1c5d8de3fd]SELECT *
FROM prices
WHERE name LIKE '%maxtor%diamond%' AND name NOT LIKE '%atlas%' AND name NOT LIKE '%serial%'[/sql:1:1c5d8de3fd]
Marusz
Cytat
[sql:1:7b201ca3b0]SELECT *
FROM prices
WHERE name LIKE '%maxtor%diamond%' AND name NOT LIKE '%atlas%' AND name NOT LIKE '%serial%'[/sql:1:7b201ca3b0]


8O Drogi Kszychu, a nie da sie tego jakos w podobny desen do mojego zrobic? Bo widzisz, w momencie gdy DYNACZMINIE okresle 3 slowa niedozwolone (a tak rowniez moze byc), to bym musial na podstawie spacji dzielic slowa i petlic zapytania - a tak jest brzydko winksmiley.jpg
kszychu
Drogi maruszu, nie da się. Dlaczego? Juz tłumaczę. Wiesz co oznacza %? To dowolny CIąg znaków. TAk więc Twoje zapytanie wykluczy rekordy typu: "atlas tu dowolny ciąg serial" ale już nie wykluczy "serial tu dowolny ciąg atlas". Natomiast moje owszem.
Marusz
"Wielkies mi uczynil pustki, w kodzie moim, drogi kszychu, tymże hintem Twoim." winksmiley.jpg
Nie mniej jednak dziekuje. Pozdrawiam!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.