Autor Zpráva
iceover
Profil *
table_contact:
id_user|last_name_1

table_cv:
id_user|last_name_2


Zdravím potřeboval bych vypsat uživatele a setřídit je podle příjmení. Jenže příjmení je uloženo buď v tabulce 'contact' nebo v tabulce 'cv' a nebo není uloženo vůbec. Jde mi o to, jakým způsobem sestavit podmínku a uložit příjmení do proměnné, podle které to pak můžu seřadit. Tak aby to bylo něco, jako v PHP:

$last_name = '';
$last_name = ($last_name_1) ?  $last_name_1 : $last_name; 
$last_name = ($last_name_2) ?  $last_name_2 : $last_name; 

Koukal jsem do manuálu, ale už jsem z toho magor.

Mockrát děkuji za každou radu!
Andrasin
Profil
Nejsem si úplně jistý, jestli jsem správně pochopil, co chcete udělat. Ale pokud to chápu dobře a chcete z obou tabulek smíchat data, kde příjmení není NULL, seřadit je a vypsat, tak by to šlo udělat třeba takhle:

<?php
$sql = mysql_query('SELECT last_name_1 FROM table_contact WHERE (last_name_1 IS NOT NULL) UNION ALL SELECT last_name_2 FROM table_cv WHERE (last_name_2 IS NOT NULL) ORDER BY 1 ASC');

while($vypis = mysql_fetch_array($sql)) echo $vypis['last_name_1'] . '<br />';
?>
Kajman
Profil
ifnull lze použít např. takto...

SELECT t.id_user,
       ifnull(co.last_name_1, cv.last_name_2) prijmeni
FROM   tabulka t
       LEFT JOIN table_contact co
         ON t.id_user = co.id_user
       LEFT JOIN table_cv cv
         ON t.id_user = cv.id_user
ORDER BY prijmeni         

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: