Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] Zapytanie z grupowaniem
-lukasamd-
post
Post #1





Goście







Witam,
mam tabelę o takiej strukturze:

id | element_id | type_id | value


Chciałbym w 1 zapytaniu pobrać określone id i element_id pogrupowane poprzez type_id. Do jednego type_id może być wiele element_id
Jak więc powinno to wyglądać, aby w PHP można było to potem sensownie podzielić (musi być 1 zapytanie)?

Nie wiem czy zapytanie jest dobre, ale powinno zobrazować o co mi chodzi:

  1. SELECT * FROM tabela
  2. WHERE element_id IN (1,5,8,9,10) AND type_id = '1'
  3. OR element_id IN (2,7,15) AND type_id = '2'
  4. OR element_id IN (3,6,12,13,14) AND type_id = '3'
  5. ORDER BY type_id


Obawiam się jednak, że OR zostanie źle potraktowane, tzn. równolegle do AND, a powinno być tak jak w zapisie logicznym (nawiasy):

((element_id IN (1,5,8,9,10)) && (type_id = 1)) || ((element_id IN (2,7,15)) && (type_id = 2)) || ((element_id IN (3,6,12,13,14)) && (type_id = 3))

Aha, dla różnych type_id mogą występować TAKIE SAME element_id (nie uwzględniłem tego w przykładzie).

Ten post edytował lukasamd 13.02.2010, 09:11:53
Go to the top of the page
+Quote Post

Posty w temacie
- lukasamd   [PHP][MySQL] Zapytanie z grupowaniem   13.02.2010, 09:08:46
- - skowron-line   A czy element_id IN (1,5,8,9,10) AND type_id = ...   13.02.2010, 10:27:51
- - lukasamd   Nie. Type_id są wstawiane "na sztywno". ...   13.02.2010, 13:07:17


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: 24.12.2025 - 04:54