CASE frd.currency
WHEN '人民币/CNY' THEN
ROUND(frd.spotRate, 2)
WHEN '人民币/RMB' THEN
ROUND(frd.spotRate, 2)
WHEN '日元/JPY' THEN
ROUND(frd.spotRate, 4)
WHEN '美元/USD' THEN
ROUND(frd.spotRate, 2)
WHEN '港币/HKD' THEN
ROUND(frd.spotRate, 2)
WHEN '瑞士法郎/CHF' THEN
ROUND(frd.spotRate, 2)
WHEN '卢布/RUB' THEN
ROUND(frd.spotRate, 2)
WHEN '欧元/EUR' THEN
ROUND(frd.spotRate, 2)
ELSE
frd.spotRate
END AS spotRate
我想把这段sql 放进去 返回spotRate
应该怎么写 各位前辈帮帮忙。。。。
您的需求是建立存储过程的方法,请采纳:
delimiter//
CREATE PROCEDURE 函数名称 (IN 参数名称 varchar(255),OUT spotRate varchar(255))//IN代表输入的参数,后面是参数的类型,OUT代表输出
CONTAINS SQL
BEGIN
//您的逻辑处理
END;//
delimiter;
结束
//如果您想要在逻辑处理内对spotRate进行赋值,可以使用set关键字,列:SET spotRate='RMB'
建议您去看看书籍:《SQL必知必会》书籍的目的学习使用SQL,不包含数据库其他的知识,如果您当前只想链接SQL使用,建议去看看。
追加一下:
delimiter//是改变当前的SQL结束符标志为‘//’,默认的结束符是‘;’,最后一行要改回‘;’。
另外调用函数的方法,查询语句:call 函数名称(参数1,参数2);
由于您的参数2是输出,所以的到输出结果还要紧接着书写SQL:select 参数2;所以调用书写为:
call 函数名称(参数1,参数2);
select 参数2;