このコードを使用して VIEW を作成しました。
CREATE OR REPLACE VIEW aaa AS
SELECT pry.uid,
treg.nombre_es as region,
tpais.nombre_es as pais,
tdep.departamento,
dep_other, tciu.ciudad,
ciu_other
FROM tx_oriproyectos_proyectos AS pry
LEFT JOIN tx_oritablascomunes_regiones as treg ON pry.region = treg.uid
LEFT JOIN tx_oritablascomunes_paises as tpais ON pry.pais = tpais.uid
LEFT JOIN tx_oritablascomunes_departamentos as tdep ON pry.departamento = tdep.uid
LEFT JOIN tx_oritablascomunes_ciudades as tciu ON pry.ciudad = tciu.uid
そして、私はこれを取得し、OKです:
結果 http://finewebdesigns.com/images/mysql_view_result.jpg
そして今、次のような連結結果を取得する必要があります。
concatenated_field
---------------------------------------
Africa - ALbania - Tirana1 - Tirana2
Africa - Colombia - Guaviare - Calamar
どうやってやるの?
私はこれを試しました:
CREATE OR REPLACE VIEW aaa AS
SELECT CONCAT_WS (' - ', pry.uid, treg.nombre_es as region, tpais.nombre_es as pais, tdep.departamento, dep_other, tciu.ciudad, ciu_other)
FROM tx_oriproyectos_proyectos AS pry
LEFT JOIN tx_oritablascomunes_regiones as treg
ON pry.region=treg.uid
LEFT JOIN tx_oritablascomunes_paises as tpais
ON pry.pais=tpais.uid
LEFT JOIN tx_oritablascomunes_departamentos as tdep
ON pry.departamento=tdep.uid
LEFT JOIN tx_oritablascomunes_ciudades as tciu
ON pry.ciudad=tciu.uid
しかし、私は得ました:
#1583 - Incorrect parameters in the call to native function 'CONCAT_WS'
わかりました、@Mat のおかげで、私は最終的にこのコードを取得しました。これは、この問題の予想される解決策です。
CREATE OR REPLACE VIEW aaa AS
SELECT pry.uid, CONCAT_WS (' - ', treg.nombre_es, tpais.nombre_es, tdep.departamento, NULLIF(dep_other,''), tciu.ciudad, NULLIF(ciu_other,''))
FROM tx_oriproyectos_proyectos AS pry
LEFT JOIN tx_oritablascomunes_regiones as treg
ON pry.region=treg.uid
LEFT JOIN tx_oritablascomunes_paises as tpais
ON pry.pais=tpais.uid
LEFT JOIN tx_oritablascomunes_departamentos as tdep
ON pry.departamento=tdep.uid
LEFT JOIN tx_oritablascomunes_ciudades as tciu
ON pry.ciudad=tciu.uid
これを取得します: http://finewebdesigns.com/images/mysql_view_result_solved.jpg