Citat:
ivankos:
a prihvatljivo je i:
+-------+-------------+----------+-----------+
| id | opis | opis1 | opis2 |
+-------+-------------+----------+-----------+
| id1 | t1.opis | t2.opis1 | t3.opis1 |
| id1 | NULL | t2.opis2 | t3.opis2 |
| id1 | NULL | NULL | t3.opis3 |
+-------+-------------+----------+-----------+
pazi sad problem ... zasto je ovo prihvatljivo a ovo nije:
+-------+-------------+----------+-----------+
| id | opis | opis1 | opis2 |
+-------+-------------+----------+-----------+
| id1 | t1.opis | t2.opis1 | t3.opis3 |
| id1 | NULL | t2.opis2 | t3.opis2 |
| id1 | NULL | NULL | t3.opis1 |
+-------+-------------+----------+-----------+
ili ovo
+-------+-------------+----------+-----------+
| id | opis | opis1 | opis2 |
+-------+-------------+----------+-----------+
| id1 | t1.opis | t2.opis1 | t3.opis3 |
| id1 | NULL | t2.opis2 | t3.opis1 |
| id1 | NULL | NULL | t3.opis2 |
+-------+-------------+----------+-----------+
ili
+-------+-------------+----------+-----------+
| id | opis | opis1 | opis2 |
+-------+-------------+----------+-----------+
| id1 | t1.opis | t2.opis2 | t3.opis3 |
| id1 | NULL | t2.opis1 | t3.opis2 |
| id1 | NULL | NULL | t3.opis1 |
+-------+-------------+----------+-----------+
dakle zasto ce bas t2.opis1 da bude u istom slogu sa t1.opis a ne sa null i zasto ce bas t3.opis1 da bude u tom slogu a ne recimo t3.opis3 ...
moras da imas definisane sve uslove, ako ostavis stvari nedefinisane onda dobijes
mysql> select * from t1 join t2 using (id) join t3 using (id);
+------+----------+----------+----------+
| id | opis | opis | opis |
+------+----------+----------+----------+
| 1 | t1.opis1 | t2.opis1 | t3.opis1 |
| 1 | t1.opis1 | t2.opis2 | t3.opis1 |
| 1 | t1.opis1 | t2.opis1 | t3.opis2 |
| 1 | t1.opis1 | t2.opis2 | t3.opis2 |
| 1 | t1.opis1 | t2.opis1 | t3.opis3 |
| 1 | t1.opis1 | t2.opis2 | t3.opis3 |
+------+----------+----------+----------+
6 rows in set (0.00 sec)
sto su sve kombinacije gore pomenute .. e ti bi sad odatle da izvadis "samo neke kombinacije" - super - koji ti je kriterijum?
ako nemas kriterijum, svejedno ti je .. dodaj group by t3.opis pa dobijes
mysql> select * from t1 join t2 using (id) join t3 using (id) group by t3.opis;
+------+----------+----------+----------+
| id | opis | opis | opis |
+------+----------+----------+----------+
| 1 | t1.opis1 | t2.opis1 | t3.opis1 |
| 1 | t1.opis1 | t2.opis1 | t3.opis2 |
| 1 | t1.opis1 | t2.opis1 | t3.opis3 |
+------+----------+----------+----------+
3 rows in set (0.00 sec)
dakle dobio si to sto si hteo .. t3.opis po jednom a za t1.opis i t2.opis si dobio random vrednost za taj ip ..
znam da to nije ono sto hoces, ali napisi koji ti je "uslov" za to sto hoces ..