update xc_device_bind_agent a left join waibu_agent b on a.agent = b.server left join gps.ascriptionserver c on b.server = c.server set a.agent = CASE WHEN `c.CompanyName` is not null THEN `c.CompanyName` ELSE b.name where b.name is not null; 这里面哪里语法错了
时间: 2024-03-15 10:45:54 浏览: 54
TCP.zip_in_tcp server.c_tcp.c
这个 SQL 语句中有一个语法错误,应该将 `ELSE` 关键字与 `WHERE` 关键字分开。修改后的语句如下:
```
UPDATE xc_device_bind_agent a
LEFT JOIN waibu_agent b ON a.agent = b.server
LEFT JOIN gps.ascriptionserver c ON b.server = c.server
SET a.agent = CASE
WHEN c.CompanyName IS NOT NULL THEN c.CompanyName
ELSE b.name
END
WHERE b.name IS NOT NULL;
```
修改后的语句中,将 `ELSE` 关键字和 `WHERE` 关键字分开,并在 `CASE` 语句中添加了 `END` 关键字。同时,为了保持代码的可读性,对 SQL 语句进行了适当的格式化。
阅读全文