Autor Zpráva
j_hajsl
Profil
mám tento dotaz

SELECT * FROM clients LEFT JOIN odhady ON cl_id = odh_klient AND cl_status = 'zaplaceni' ORDER BY cl_prijmeni LIMIT 0, 10

potřebuji aby to vypsalo klienty a ti co uz maji odhad, tak cenu odhadu (a to je v tab. odhady), ale potřebuji vsechny i ty, co odhad nemaji, pouzivam tedy LEFT JOIN ... ON a ne WHERE, ale nejak to nefunguje protože to vypiše všechny klienty, nejen ty co mají

cl_status = 'zaplaceni'

a jak jsem vyčetl z manuálu, současné užití WHERE a ON je možné je když chci mít nějaký sloupec prázdný (např. WHERE sloupec IS NULL) ...

dříve jsem si vystačil bez LEFT JOIN tak prosim o schovívavost ;-)
j_hajsl
Profil
SELECT *
FROM clients
LEFT JOIN odhady ON cl_id = odh_klient
WHERE cl_status = 'zaplaceni'
ORDER BY cl_prijmeni

takto to funguje ... no v manualu o LEFT JOIN psali něco jiného, nebo jsem blbě četl, to spíše ...
j_hajsl
Profil
no tak jsem vyresil jak vypisovat a radit tada najednou ze 3 tabulek, problem ale je ze z jedne tabulky beru data 2x, a to tim zpusobem, ze po kazde si ji "prejmenuji" pomoci AS, ale neumim se k nim jinak nez vypisem danych polozek dostat ...

napr. mam SELECT *, mak.name AS mak_name, odh.name AS odh_name FROM clients LEFT JOIN users AS mak ON cl_makler = mak.user_id LEFT JOIN users AS odh ON cl_odhadce = odh.user_id

a já se ptám jeslti není nějaká syntaxe
SELECT *, mak.* AS mak_*, odh.* AS odh_*
abych to mohl s tech tabulek tahat najednou vse bez vypisovani a prejmenovavani vsech sloupcu v tech "AS-tabulkach" ...

snad jsem to vysvětlil dobře ....
Kajman_
Profil *
abych to mohl s tech tabulek tahat najednou vse bez vypisovani a prejmenovavani vsech sloupcu v tech "AS-tabulkach"

Asi jen pomocí očíslovaného pole.
j_hajsl
Profil
Já bych to potřeboval kvůli používání fce mysql_fetch_array(), když k tomu přístupuju pomoci $vypis['sloupec'], tak je to ok, ale kdyz taham 2 ruznje veci ze stejne tabulky pod 2 ruznymi názvy, tak musim pouzit AS protoze nevim proc konstrukce $vypis['tabulka.sloupec'] mi nefunguje
Kajman_
Profil *
Můžete použít ještě $vypis[poradi_sloupecku], ale rozumnější asi bude nafrkat tam ty aliasy po jednom.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0