Autor Zpráva
Fipo
Profil *
Zdravím, mám ->join('new_name nn', 'tab.id op.product_id = nn.id', 'left') - potřebuji aby se mi údaj tab.id a op.product_id sloučil do řetězce.
Řekněme, že tab.id je 10 a op.product_id je 11 - potřebuji aby se z toho udělalo 1011 a to se rovná nn.id.

Děkuji za rady ;-)
juriad
Profil
Co je to ->join? Používáš nějakou vrstvu nad databází, o které nic neříkáš.
V obyčejném SQL to zle udělat na MySQL pomocí funkce CONCAT, v jiných databázích pomocí operátorů || nebo +.
Kajman
Profil
Fipo:
tab.id je 10 a op.product_id je 11 - potřebuji aby se z toho udělalo 1011

Proč to splácáváte nesmyslně do jednoho sloupce? Když bude tab.id 101 a op.product_id 1, tak k tomu patří stejné new_name? Lepší bude zachovat identifikaci i v tabulce new_name na dvou sloupcích - čímž i odpadne nutnost používat zřetězení.
Fipo
Profil *
Požívám Codeigniter. Když dám + tak mi je to sečte a když je dám do uvozovek hlásí mi to chybu. CONCAT také hlásí chybu.
Kajman: ono je to trochu složitější na vysvětlení ale potřebuji to takto.

Děkuji
Alphard
Profil
Fipo:
CONCAT také hlásí chybu.
Jakou?
Fipo
Profil *
Já nevím, já už zkoušel snad všechno....
Alphard: píše mi to syntax error.
Mám to takhle: ->join('new_name nn', 'CONCAT(tab.id, op.product_id) = nn.id', 'left')


Tak jsem na to přišel. Musel jsem to napsat takhle: CONCAT( tab.id , op.product_id ) - s mezerami

Děkuji všem zúčastněným.

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: