mysql自定义函数

mysql自定义函数完成项目功能

CREATE
	FUNCTION `get_out_storage_qty` 
	(
		bill_codes VARCHAR(64),
		symbol INTEGER 
	)
	RETURNS INTEGER 
BEGIN
	DECLARE v1 VARCHAR(20); if symbol = 0 THEN 
SET
	v1 = '+' ; ELSE 
SET
	v1 = '-'; 
END
	if; RETURN (SELECT
					SUM(o.qty) QTY 
				FROM
					(	SELECT
							wsl.qty,
							CONCAT(wsl.id,'b') id,
							( 
							CASE 
								WHEN wsl.qty <= 0 
								THEN '+' 
								WHEN wsl.qty > 0 
								THEN '-' 
							END ) STATE 
						FROM
							wrm_stock_log wsl 
						WHERE
							wsl.BILL_CODE IN (bill_codes) 
						GROUP BY
							wsl.id ,
							( 
							CASE 
								WHEN wsl.qty <= 0 
								THEN '+' 
								WHEN wsl.qty > 0 
								THEN '-' 
							END ) 
					)
					o 
				GROUP BY
					o.STATE 
				HAVING
					o.STATE = v1 
	)
	; 
END

调用

select get_out_storage_qty('FP101801150003',0)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值