Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Łączenie trzech tabel + kryteria
Forum PHP.pl > Forum > Bazy danych > MySQL
kosy
Mam trzy tabele tab1, tab2 i tab3 o identycznych strukturach (id, typ, model, data).

Jak powinno wyglądać zapytanie do bazy, które połączy te tabele w jedną o takiej samej
strukturze (id, typ, model, data) i wyświetli według kryterium WHERE model = '$model' ORDER BY data?
Speedy
Możesz wykonać trzy osobne zapytania, gdzie w każdym dasz sobie warunek: WHERE = '$model', a potem w php pobrać dane w postaci 3 tablic i stworzyć z nich jedną tablicę. Nie wiem, jak najrozsądniej byłoby posortować te informacje z trzech tabel sumarycznie... Możesz pokombinować z funkcjami odpowiadającymi za sortowanie tablic w php.
Być może da się zrobić takie zapytanie sql, które spełni Twoje oczekiwania. Nie wykluczam tego, gdyż moja znajomość tego języka nie jest niestety nadwyraz rozległa tongue.gif.
SongoQ
Funkcja UNION w SQLu.
free
Mógłbyś podać jakis przykład uzycia tej funkcji ?
Mam podobny problem i nie wiem jak sie za niego zabrać.
Indeo
Nie powinno byc takich sytuacji. Jesli dane w poszczególnych tabelach maja tę sama strukturę nie powinno sie pozwalać aby część danych była w jednej tabeli a część w innej, np. sprzedaż marca w tabeli marzec a sprzedaż kwietnia w tabeli kwiecień. Trzeba przewidzieć jedną tabelę z dodatkowym polem miesiąc i sprawa załatwiona. Ale kiedy już masz taką sytuacje narzuconą - pozostaje UNION albo tabele tymczasowe (zbierające dane do kupy). Ale na wyniku złączenia UNION nie zrobisz już np. sortowania czy nie użyjesz funkcji grupujących itd. (przynajmniej jak używałem UNION tak było)
SongoQ
Cytat
Ale na wyniku złączenia UNION nie zrobisz już np. sortowania czy nie użyjesz funkcji grupujących itd. (przynajmniej jak używałem UNION tak było)


Zrobisz gdzie zlaczenia union beda podzapytaniem

Przyklad UNION

  1. SELECT 1 ................... UNION SELECT 2.......................
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.