![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 16.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam następujący problem z wyciągnięciem z tabeli tylko tych id , które jednocześnie spełniają wszystkie kryteria wyszukiwania. Struktura tabeli wygląda następująco: fields_products_id int(11) - klucz, autoincrement field_id smallint(5) products_id smallint(5) W tabeli znajdują się różne rekordy mające te same wartości products_id.Przykładowo mamy produkt A o jednym products_id który jednocześnie posiada 3 rekordy z field_id = 1,2,3 i produkt B mający tylko 2 rekordy field_id = 1,3. Staram się wyciągnąć z bazy tylko te products_id które spełniają jednocześnie warunek posiadania field_id = 1,2 i 3. Metody jakich próbowałem również nie działają: 1. Prosta kwerenda SELECT * FROM tabela WHERE field_id = 1 and field_id = 2 and field_id = 3 Nie zwraca niczego. 2. Podobnie j.w. jest przy stosowaniu więcej niż jednego AND . 3. SELECT * FROM tabela WHERE field_id IN (1,2,3) Zwraca również te produkty które nie mają 2 ale posiadają przynajmniej jedną z pozostałych wartości 4. Podkwerendy też nie tj. nie zwracają niczego lub zwracają wszystkie rekordy Nie wiem już kompletnie jak się do tego zabrać. Najprostsze rozwiązania już wykorzystałem, a niestety nie jestem Guru SQL. Z góry dziękuję za pomoc ![]() Pozdrawiam Adam |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 18:23 |