Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> MySql - Zapytanie dla wyszukiwania, wiele wartości jedna kolumna, NIE IN !
xammil
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 13.02.2011

Ostrzeżenie: (0%)
-----


Witam, mam problem z zapytaniem w MySql, problem wyglada tak:

Muszę wyszukać w jednej kolumnie różne wartosci np:

...WHERE
`kolumna_1` = 10 AND
`kolumna_1` = 20 AND
`kolumna_1` = 30 AND

kolumna_1 to (INT)

'prawie' idealnie nadaje się IN (10,20,30), z tym ze potrzebuje wyniku gdzie dla kolumny_1 WHERE wlasnie jest takie jak wyzej

zrobilem to zapytanie z LEFT JOIN, z tym ze łączyłem JOIN'em caly czas ta samą tabelę dla kolejnego AND..., to jest raczej mało wydajne (zakladajac że zapytanie może dojść do 30/40 AND na tej samej kolumnie)

Proszę o pomoc, niestety nie mam żadnego pomysłu na to ....

Pozdrawiam Kamil.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
redeemer
post
Post #2





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Pytanie było niejasne, a tłumaczenie w stylu "zmienna = A AND zmienna = B" w ogóle nie pomaga. W dalszym ciągu nie wiem czy dobrze rozumiem Twój problem, ale może takie coś?
  1. SELECT *
  2. FROM `artykuly` AS A
  3. LEFT JOIN `artykuly_opcje` AS AP ON (A.`id`=AP.`id_artykulu`)
  4. WHERE
  5.  
  6. (AP.`id_atrybutu` = 10 AND AP.id_wartosci = 100 ... )
  7. OR
  8. (AP.`id_atrybutu` = 20 AND AP.id_wartosci = 200 ...)
  9. OR
  10. (AP.`id_atrybutu` = 30 AND AP.id_wartosci = 300 ...)
Najlepiej wklej strukturę tabel, oraz jakiego wyniku oczekujesz od zapytania.

Ten post edytował redeemer 11.09.2012, 10:22:43
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 23:52