0

查询'-'无法执行。请帮忙。

    update table_attributes set foreign_table=
    '(select users_roles.*, concat(persons.firstname,'-',roles.r_name) as name from users_roles users_roles left join users users on users_roles.user_id = users.user_id 
    LEFT JOIN persons on persons.user_id=users.user_id 
    left join roles roles on users_roles.role_id = roles.role_id as users_roles ' where att_id=24
4

1 回答 1

0

使用Dollar-Quoted String语法 - 它非常安全且易读 - 并且不要忘记之前的右括号as users_roles

update table_attributes set foreign_table =
$FT_SQL$(
 select users_roles.*, concat(persons.firstname,'-',roles.r_name) as "name" 
   from users_roles users_roles 
   left join users users on users_roles.user_id = users.user_id 
   left join persons on persons.user_id=users.user_id 
   left join roles roles on users_roles.role_id = roles.role_id
) as users_roles;$FT_SQL$
where att_id=24;

请注意,有些别名是多余的。

于 2020-10-09T10:03:44.283 回答