![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 1.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam
w jaki sposób najbardziej optymalnie wyświetlić dane z 2 tabel z jakimś warunkiem i sortowaniem ? t1 = id,nazwa t2 = id,nazwa Ten post edytował zundap 22.03.2011, 08:32:42 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 286 Pomógł: 29 Dołączył: 5.04.2007 Skąd: Rymanów Zdrój/Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 1.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
tylko że wynik tego mam taki
w bazie t1 idd =1 nazwa marek idd =2 nazwa mirek idd =3 nazwa bartek idd =4 nazwa franek t1 idd =1 nazwa anna idd =2 nazwa kasia jak dam wychodzi 1.marek anna 2.marek kasia 3.mirek anna 4.mirek kasia 5.bartek anna 6.bartek kasia 7.fanek anna 8.franek kasia A ja chcę żeby było 1.marek 2.mirek 3.bartek 4.fanek 5 kasia 6 anna Ten post edytował zundap 22.03.2011, 08:33:14 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 3 Dołączył: 16.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
SELECT * FROM t1 UNION SELECT * FROM t2
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 1.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
wywala błąd
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Co tu źle (IMG:style_emoticons/default/smile.gif) Ten post edytował zundap 24.03.2011, 08:18:07 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 107 Pomógł: 30 Dołączył: 19.02.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Pozwól bazie danych podpowiedzieć Ci co się dzieje:
$result = mysql_query("SELECT * FROM t1 UNION SELECT * FROM t2") or die (mysql_error()); Inna metoda: "Wątpliwą" kwerendę wykonaj spod phpMyAdmin. Na ogół wystarczy odczytać wyświetlony "protest" i stosownie zareagować. Na "mojego nosa": Tabele t1 i t2 mają "niepokrywające się" atrybuty i wtedy: 1. Baza ciągnie dane z t1 - na razie OK. 2. Baza próbuje doczytać rekordy z t2. 3. Któreś kolumny z t2 "nie pasują" do listy kolumn ciągniętych z t1 i kwerenda się wywala. Albo w t2 są jakieś "dodatkowe" atrybuty w stosunku do t1, albo odwrotnie (czegoś nie ma). Rada: Zamiast "*" podaj jawnie listę pól do odczytu. Jeszcze jedna uwaga: Czasem się zapomina, że UNION domyślnie eliminuje powtórzone rekordy. Aby to zablokować zmień na UNION ALL. Ten post edytował Valdi_B 24.03.2011, 09:46:36 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 1.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
The used SELECT statements have a different number of columns
Masz rację wszystko działa (IMG:style_emoticons/default/smile.gif) Ten post edytował zundap 24.03.2011, 10:40:48 |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat co to znaczy podaj jawnie listę pól do odczytu. select t1.pole1, t1.pole2,t1.pole3..... |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 18.09.2010 Ostrzeżenie: (20%) ![]() ![]() |
select to co chcesz from t1,t2
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 16:52 |