![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 333 Pomógł: 16 Dołączył: 13.05.2008 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam, prosiłbym o odpowiedź na teoretyczne pytanie.
Przyjdzie mi zmierzyć się z łączeniem dwóch tabel za pomocą UNION. Obie mają identyczne budowy w 100% łącznie z postawionymi indeksami ale służą ciut do czego innego - jedna jest ogromna druga malutka - ta druga jest częściej wykorzystywana bo działa znacznie szybciej. I moje pytanie brzmi jak połączyć tabelę i zastosować klauzurę WHERE np. tabela_1 id, tytul tabela_2 id, tytl Kod mysql_query("SELECT id, tytul FROM tabela_1 UNION SELECT id, tytul FROM tabela_2 WHERE id<100 ORDER BY tytul") - czy to jest poprawne? Domyślam się że nie bo analogiczne nie działa ;] Kod mysql_query("SELECT id, tytul FROM tabela_1 UNION SELECT id, tytul FROM tabela_2 WHERE tabela_1.id<100 AND tabela_2.id ORDER BY tabela_1.tytul AND tabela_2.tytul") ? Dzięki za pomoc ![]() -------------------- Kliknij POMÓGŁ jeśli moja odpowiedź okazała się użyteczna!
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Za pomocą UNION łączysz wyniki kilku zupełnie niezależnych SELECTów. Nie możesz więc w jednym z nich odwoływać się do drugiego. Jeżeli chcesz nadać jakieś warunki to zrób to w poszczególnych SELECTach lub już poza UNION używając konstrukcji:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 23:23 |