项目情景:
本来项目好好的,有一天客户从别的系统导入了数据,导致系统异常,按照常规的操作,当然是把异常打印出来
发现SQL异常了,按套路走起,检查数据
问题找到了,解决就好办了,就是使用子查询条件判断
SELECT
托盘号,
托盘名称
FROM
(
SELECT
(
CASE SUBSTRING (pallet_no, 1, 2)
WHEN 'ZB' THEN
SUBSTRING (pallet_no, 3, len(pallet_no))
ELSE
pallet_no
END
) AS 托盘号数字,
pallet_no AS 托盘号,
pallet_name AS 托盘名称
FROM
BASE012M (nolock)
) M
WHERE
CONVERT (
FLOAT,
ISNULL(托盘号数字, 0)
) >= '717'
AND CONVERT (
FLOAT,
ISNULL(托盘号数字, 0)
) <= '10086'