sql - 卡在错误 537 和传递给 LEFT 或 SUBSTRING 函数的长度参数无效
问题描述
代码:
With TempSalesOrder as
(SELECT
CASE
WHEN CHARINDEX('(',[item]) > 0
THEN TRIM(LEFT([item],CHARINDEX('(',[item])-1))
ELSE Trim([Item])
END as 'Trimmed_Name',
SUM(QTY) as 'Total_Sum'
FROM temp.QB_SO
GROUP BY [item], TRIM(LEFT([item],CHARINDEX('(',[item])-1)))
请帮忙。我试图通过删除括号中的额外信息来修剪项目名称。但是,有一些没有任何额外信息或括号。
解决方案
GROUP BY
应该是– GROUP BY CASE WHEN CHARINDEX('(',[item]) > 0 THEN TRIM(LEFT([item],CHARINDEX('(',[item])-1)) ELSE Trim([Item]) END
Lamak x 分钟前
谢谢拉马克!
推荐阅读
- azure - Azure DevOps Release Pipeline - Protractor UI 测试套件
- node.js - Node JS:JWT verify vs redis 查询性能比较?
- kubernetes - 计算机进入睡眠状态后,Rook Ceph 监视器和 osd 失败
- php - 使用 PHP 以毫秒为单位转换日期
- python - Django:“utf-8”编解码器无法解码位置 2 中的字节 0xd1:无效的继续字节
- asp.net-core - 在一个控制器方法中捕获所有 HTTP 请求 .Net Core
- json - 枚举反序列化给出 null
- c++ - 使用 boost 代码处理可能/不太可能的宏的命名空间冲突的最佳方法
- maven - IntelliJ 可以在调试模式下运行 Maven 项目但忽略断点
- angular - FormControlName 没有与递归模板中的父 FormGroup 关联