sql-server - CASE WHEN 不适用于某些语法不正确的值
问题描述
我正在尝试在更新语句时做一个案例,但我在''附近不断收到不正确的语法。错误。我不明白,因为下面的第二个查询运行得很好,但第一个没有。唯一的区别是我设置memrvam
为 1.24 而不是 8.48。
UPDATE a
SET memslam = CASE detseqno
WHEN 1923 THEN 338.63
WHEN 43 THEN 355.56
END,
memrvam = CASE detseqno
WHEN 1923 THEN 8.48
WHEN 43 THEN 8.89
END
FROM slst1consl a
LEFT JOIN wprsbatchxref b ON b.batchnum = a.batchid
AND b.recdate = a.recdt
AND b.supplier_date = a.supdt
WHERE b.batch_id IN(2058708, 2058709)
AND memid = 922269
AND detseqno IN (1043, 43);
UPDATE a
SET memslam = CASE detseqno
WHEN 1923 THEN 338.63
WHEN 43 THEN 355.56
END,
memrvam = CASE detseqno
WHEN 1923 THEN 1.24
WHEN 43 THEN 8.89
END
FROM slst1consl a
LEFT JOIN wprsbatchxref b ON b.batchnum = a.batchid
AND b.recdate = a.recdt
AND b.supplier_date = a.supdt
WHERE b.batch_id IN (2058708, 2058709)
AND memid = 922269
AND detseqno IN (1043, 43);
解决方案
那里有隐藏的特殊字符:
THEN 8.48
将此行复制到我的编辑器时,我看到
THEN ?8.48?
因此,只需删除该行并重新编写即可。
推荐阅读
- ios - 个人团队未注册 Apple Developer Program
- swift - 离线时删除、添加和更新 Firestore 文档
- java - 带有迭代的 Yelp API 搜索请求 - 如何进行迭代
- c - 调用 globfree() 时出现分段错误
- c++ - 使用 IMFSinkWriter 更改标题、作者等元数据
- python - 为什么我的 python 循环只返回最后一轮结果
- postgresql - Postgresql Jdbc Prepared statement Query String with Single Quotes 给出错误
- javascript - 即使在 D3 + JavaScript 数据中解析为整数之后,数据也会以 Nan 的形式出现
- angular - 为什么我的 Angular 默认应用的 app.component.scss 是空的?
- android - 我在我的 Android 中得到“无法解析方法 .getEntity()”?