【发布时间】:2023-03-19 04:40:01
【问题描述】:
有人能告诉我他们能看出下面代码中的问题吗?
--Query for DC Allocated Stock - Qty & Values
-------------------------------------------
Declare @Brand varchar(50),
@Div varchar(50),
@Dept varchar(50),
@Store varchar(50),
@StyleOrSKU varchar(50)
Set @Brand = 'TestProduct' --Test criteria
set @Div = ''
Set @Dept = ''
set @Store = ''
set @StyleOrSKU = ''
第一个查询,表 Qry_1_DCSOH - 返回手头的库存数量
SELECT Brand,
CASE
WHEN Brand = @Brand THEN sum(AllocStockQty)
WHEN Division = @Div THEN sum(AllocStockQty)
WHEN Department = @Dept THEN sum(AllocStockQty)
WHEN Store = @Store THEN sum(AllocStockQty)
WHEN StyleOrSKU = @StyleOrSKU THEN sum(AllocStockQty)
ELSE 'NoMatch'
END as [Allocated Stock Qty]
FROM Qry_2_DCAllocStock
GROUP BY Brand, Division, Department, Store, StyleOrSKU
我得到的错误是 Msg 8114, Level 16, State 5, Line 20 将数据类型 varchar 转换为浮点数时出错。
但我真的不确定问题出在哪里 - 请协助。
【问题讨论】:
-
那是什么语言?你能调整你的问题的标签吗?
-
我猜这是 SQL。指定第 20 行对您会有所帮助,但错误消息很确定您正在尝试使 varchar 数据类型等同于某处的浮点数。
-
抱歉,这是 SQL
-
格式化、语法
标签: sql sql-server tsql case