![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 10 Dołączył: 20.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mamy dwie tabele. W jednej przechowywuje użytkowników w drugiej wiadomości. Pobranie tematów wiadomości wraz z loginami osób mogę zrobić na dwa sposoby:
Oba zapytania zwrócą ten sam wynik. Które z tych zapytań jest bardziej wydajne i mniej obciąża bazę danych. Używam osobiście framework Zend Framework, i korzystam z Zend_Db_Select. Korzystając z tego obiektu stworzenie pierwszego zapytania SQL nie jest możliwe. Może producenci ZF mieli w tym jakiś cel? Bardzo proszę o wyjaśnienie mi różnic tych dwóch zapytań. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]() ![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 10 Dołączył: 20.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Kod +------------------------------------------+--------+ | title | login | +------------------------------------------+--------+ | dodał Cię do swojej listy przyjaciół | admin | | dodał Cię do swojej listy przyjaciół | hubert | | dodał Cię do swojej listy przyjaciół | bombel | | dodał Cię do swojej listy przyjaciół | hubert | | dodał Cię do swojej listy przyjaciół | hubert | | dodał Cię do swojej listy przyjaciół | ziomal | +------------------------------------------+--------+ 6 rows in set (0,00 sec)
Kod +----+-------------+-------+--------+---------------+---------+---------+-------------------------+------+-------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-------+--------+---------------+---------+---------+-------------------------+------+-------+ | 1 | SIMPLE | m | ALL | NULL | NULL | NULL | NULL | 13 | | | 1 | SIMPLE | u | eq_ref | PRIMARY | PRIMARY | 4 | 12ga-hotnite.m.users_id | 1 | | +----+-------------+-------+--------+---------------+---------+---------+-------------------------+------+-------+ 2 rows in set (0,00 sec)
Kod +------------------------------------------+--------+ | title | login | +------------------------------------------+--------+ | dodał Cię do swojej listy przyjaciół | admin | | dodał Cię do swojej listy przyjaciół | hubert | | dodał Cię do swojej listy przyjaciół | bombel | | dodał Cię do swojej listy przyjaciół | hubert | | dodał Cię do swojej listy przyjaciół | hubert | | dodał Cię do swojej listy przyjaciół | ziomal | +------------------------------------------+--------+ 6 rows in set (0,00 sec)
Kod +----+-------------+-------+--------+---------------+---------+---------+-------------------------+------+-------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-------+--------+---------------+---------+---------+-------------------------+------+-------+ | 1 | SIMPLE | m | ALL | NULL | NULL | NULL | NULL | 13 | | | 1 | SIMPLE | u | eq_ref | PRIMARY | PRIMARY | 4 | 12ga-hotnite.m.users_id | 1 | | +----+-------------+-------+--------+---------------+---------+---------+-------------------------+------+-------+ 2 rows in set (0,00 sec) No i nadal nie widzę różnicy ![]() |
|
|
![]()
Post
#4
|
|
![]() Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
A weź sobie to zapętl ileś tam tysięcy razy i zobacz, która wersja wykona się szybciej.
-------------------- Life's simple... You make choices and don't look back...
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
a czy to przez przypadek nie jest to samo;D
-------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Jest w dokumentacji napisane, że where tabela1.pole1=tabela2.pole1 to po prostu JOIN. [;
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 104 Pomógł: 3 Dołączył: 22.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Korzystając z tego obiektu stworzenie pierwszego zapytania SQL nie jest możliwe. Może producenci ZF mieli w tym jakiś cel? Bardzo proszę o wyjaśnienie mi różnic tych dwóch zapytań. Oba zapytania sa tak naprawde takie same. Prawdopodobnie Framework chce na Tobie wymusic pisanie JOIN'ow wedlug standardu. Robi sie po to ze jak jest ich juz sporo w jakiejs aplikacji to wtedy zacznie Cie irytowac odszukiwanie zlaczen tam gdzie warunki |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 13:41 |