![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 1 Dołączył: 12.01.2009 Skąd: Kanapa Ostrzeżenie: (0%) ![]() ![]() |
Mam problem z zapytaniem a w zasadzie z jego rozszeżeniem..
To działa, dla jednego atrybutu ale jak zrobie:
To zapytanie nic nie zwraca, mimo tego że do produktu są przypisane 2 atrybuty spełniające ten warunek.. Może mi ktoś powiedzieć dlaczego ? Ew. poprawić to zapytanie.. Ten post edytował Mayka 30.07.2012, 08:40:15 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
attribute_id = war1 AND attribute_id = war2
Naprawdę wg. ciebie jeden rekord w jednym polu jednocześnie ma wartość war1 oraz war2? mała podpowiedź: nie ma. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 1 Dołączył: 12.01.2009 Skąd: Kanapa Ostrzeżenie: (0%) ![]() ![]() |
No mam tabele products w której sa produkty i ich opisy oraz drugą attributes w której są atrybuty dla produktu, np.
Products: 1 | jakis produkt | nazwa | url_fotka | i do tego w tabeli attributes produkt_id | attribute_id | 1 | 2 1 | 3 1 | 22 2 | 3 3 | 5 I teraz potrzebuje wyświetlić te które mają atrubut_id 3 -> Jest ok ale jak chce wyświetlić dla atrybutu 3 i 22 to już lipa.. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Ja to rozumiem. Odpowiedziałem jedynie na twoje pytanie. Zapytałeś co jest źle to ci napisałem:
Cytat attribute_id = war1 AND attribute_id = war2 to właśnie jest źle. Jeden rekord w danym polu nie może mieć naraz kilku wartości Naprawdę wg. ciebie jeden rekord w jednym polu jednocześnie ma wartość war1 oraz war2? ![]() Więc ten warunek attribute_id = war1 AND attribute_id = war2 zawsze da FALSE. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 1 Dołączył: 12.01.2009 Skąd: Kanapa Ostrzeżenie: (0%) ![]() ![]() |
Ja to rozumiem. Odpowiedziałem jedynie na twoje pytanie. Zapytałeś co jest źle to ci napisałem: to właśnie jest źle. Jeden rekord w danym polu nie może mieć naraz kilku wartości ![]() Więc ten warunek attribute_id = war1 AND attribute_id = war2 zawsze da FALSE. To się nie zrozumieliśmy ![]() ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat To się nie zrozumieliśmy Nie, nie. To ty nie zrozumiałeś mnie. Ja ciebie zrozumiałem doskonale ![]() Jak to naprawić? Bardzo prosto: musisz dodać tyle left join products_attributes ile masz zamiar porównywać atrybutów. Pamiętaj o aliasach. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 1 Dołączył: 12.01.2009 Skąd: Kanapa Ostrzeżenie: (0%) ![]() ![]() |
Nie, nie. To ty nie zrozumiałeś mnie. Ja ciebie zrozumiałem doskonale ![]() No zgadza sie ![]() masz na myśli coś takiego:
Bo nie bardzo rozumiem co chciałeś przekazać ![]() A co jeśli niewiem czy bede szukał po 3 czy po 2 atrybutach ? Ten post edytował Mayka 30.07.2012, 14:11:51 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
1) aliasy to się daje w zupelnie innym miejscu
2) pierwszy='3' - od kiedy to porównujesz alias do jakiejs wartosci ? Pomijając dwa punkty powyżej to tak, o to mi chodziło. Napraw punkty a będzie smigać. Cytat A co jeśli niewiem czy bede szukał po 3 czy po 2 atrybutach ? Sek w tym, że zawsze to będziesz wiedział. Przecież w jakis sposob wkladasz do porównywania wartosci wiec przecież wiesz po ilu atrybutach szukasz.... ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 1 Dołączył: 12.01.2009 Skąd: Kanapa Ostrzeżenie: (0%) ![]() ![]() |
1) aliasy to się daje w zupelnie innym miejscu 2) pierwszy='3' - od kiedy to porównujesz alias do jakiejs wartosci ? Pomijając dwa punkty powyżej to tak, o to mi chodziło. Napraw punkty a będzie smigać. Sek w tym, że zawsze to będziesz wiedział. Przecież w jakis sposob wkladasz do porównywania wartosci wiec przecież wiesz po ilu atrybutach szukasz.... ![]() Witam ponownie.. Mogłbyś mi napisać jak to ma być ? Bo wszystkie moje pomysły nie bardzo chcą współpracowac.. niewiem jak to ma być z tymi aliasami. |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
To napisz to co próbowałeś. Nie wiem jak można źle napisać aliasy wiec bardzo mnie interesuje jak to się tobie udało
![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 09:16 |