Autor | Zpráva | ||
---|---|---|---|
Fipo Profil * |
#1 · Zasláno: 10. 6. 2014, 14:58:38
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 |
#2 · Zasláno: 10. 6. 2014, 15:02:25
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 |
#3 · Zasláno: 10. 6. 2014, 15:15:29
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 * |
#4 · Zasláno: 10. 6. 2014, 15:48:27
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 |
#5 · Zasláno: 11. 6. 2014, 02:04:13
Fipo:
„CONCAT také hlásí chybu.“ Jakou? |
||
Fipo Profil * |
#6 · Zasláno: 11. 6. 2014, 16:27:33 · Upravil/a: Fipo
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. |
||
Časová prodleva: 10 let
|
0