![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam tablice o nazwach: id,nazwa,model,typ,cena id jest generowany jako ai więc wartość jest zawsze inna, ale chciałbym aby bazując na tej wartości pobrać rekordy które mają taką samą nazwę, model i typ. ogólnie problem jest prosty w rozwiązaniu, bo nic trudnego jak wykonać jedno zapytanie, a potem drugim zapytaniem wybrać rekordy. Jednak nie potrafię tego zrobić w MySQL jako jedno zapytanie. SELECT p.* FROM produkt p WHERE p.id=1234 ORDER BY cena ASC; Ten post edytował Tomplus 22.08.2012, 18:34:33 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 341 Pomógł: 40 Dołączył: 23.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
tak, tak... też tak myslałem, ale wyświetla nadal jeden rekord czyli ten co ma przypisane ID. Nie potrafię wymyśleć reguły która wybrała tabeli prawej (jeżeli ID przypisujemy do lewej) wszystkich podobnych (z wyjątkiem ID) rekordów.
Nie wiem co się dzieje, ale przy ominięciu zastosowaniu dwóch zapytań strona przestaje działać (przeciąża się serwer)
Trochę nie chce mi się wierzyć że to zapytanie nie działa, ale serio zapytanie p2 musiałem wykomentować aby strona funkcjonowała. Ten post edytował Tomplus 22.08.2012, 18:30:41 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 778 Pomógł: 84 Dołączył: 29.07.2010 Skąd: Gliwice / Pławniowice Mistrz niezmordowanej klawiatury. Ostrzeżenie: (20%) ![]() ![]() |
SELECT IN
-------------------- LS Easter egg < |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
że co? SELECT IN? dobra, zastosowałem i wynik jest taki sam jak bez SELECT IN czyli 1 rekord zamiast kilku
Może pomógłbyś w zastosowaniu, bo takie rzeczy bez przykładu raczej trudno zrealizować nawet z manualem w ręku. Ten post edytował Tomplus 22.08.2012, 19:55:01 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 341 Pomógł: 40 Dołączył: 23.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
nie ma opcji by nie zadziałał przykład który ci podałem.
pokaż co napisałeś, i jaka masz strukturę tabeli. popraw jeszcze explainem. najzwyczajniej w świecie - to musi zadziałać. podzapytania mimo iż prawidłowe - w mysql nie są zalecane. jest to strasznie nieoptymalne. j. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
Daje pomógł, bo faktycznie użycie USING wykonało zadanie takie jakie chciałem.
w PHPMyAdmin zapytanie wykonuje się błyskawicznie, ale z kodu PHP mam błąd wewnętrzny serwera czyli za bardzo obciąża się serwer. acz nie wiem dlaczego skoro w bazie istnieje 1000 wyników a funkcja pobiera (wpisując konkretne ID) 5 rekordów. nie wiem czy to z powodu zapytania czy czegoś innego. Ten post edytował Tomplus 22.08.2012, 21:32:38 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 94 Pomógł: 31 Dołączył: 12.10.2008 Skąd: WAT Ostrzeżenie: (0%) ![]() ![]() |
Ten post edytował YaQzi 22.08.2012, 23:01:23 -------------------- • Wszystkie wielkości świata nie są tyle warte, co dobra przyjaźń... • |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 875 Pomógł: 230 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
Korzystałem z podobnego zapytania ale bez ON true, daje pomógł bo zapytanie jest alternatywne do kolegi który pomógł mi przy użyciu USING.
Inne pytanie dot. problemu umieściłem tutaj: http://forum.php.pl/index.php?showtopic=203985 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 10:29 |