更新选择与何处& CONCAT问题

时间:2017-07-27 08:54:46

标签: mysql

我试图在连接两列后用另一个表数据更新表它显示错误。

  

错误代码:1064。您的SQL语法有错误;检查   手册,对应右边的MySQL服务器版本   语法

表1:订单 表2:用户

我正在尝试通过在订单表中将字段与name进行比较来更新订单表字段user_id

user_id已链接到users表。我试图连续first_name& last_name并更新订单表中的name

UPDATE orders SET 
(name =
SELECT CONCAT(u.first_name, ' ', u.last_name) as full_name
FROM users u
WHERE u.first_name IS NOT NULL OR u.first_name <> '' );

条件是这样的。

如果订单表格user_id中有任何ID,则应检查usersid并选择&amp; concat first_name&amp; last_name并更新订单表。

如果订单表中没有user_id,则应使用NONE更新字段。

通过查询来完成它很复杂。我可以用PHP做到这一点但不推荐。可以帮助一些人。

1 个答案:

答案 0 :(得分:1)

假设您在订单表上有一个user_id列要加入,您可以尝试这样做:

ObjectMapper