主页 > 知识库 > oracle if else语句使用介绍

oracle if else语句使用介绍

热门标签:AI电销 地方门户网站 服务外包 呼叫中心市场需求 Linux服务器 百度竞价排名 铁路电话系统 网站排名优化
接收contract_no和item_no值,在inventory表中查找,如果产品:
已发货,在arrival_date中赋值为今天后的7天
已订货,在arrival_date中赋值为今天后的一个月
既无订货又无发货,则在arrival_date中赋值为今天后的两个月,
并在order表中增加一条新的订单记录。

product_status的列值为'shipped'和'ordered'
inventory:
product_idnumber(6)
product_descriptionchar(30)
product_statuschar(20)
std_shipping_qtynumber(3)
contract_item:
product_id number(6)
contract_nonumber(12)
item_nonumber(6)
arrival_datedate
order:
order_idnumber(6)
product_idnumber(6)
qtynumber(3)

代码:
复制代码 代码如下:

declare
i_product_id inventory.product_id%type;
i_product_description inventory.product_description%type;
i_product_status inventory.product_status%type;
i_std_shipping_qty inventory.std_shipping_qty%type;
begin
//sql语句,将查询出来的值放到定义的变量中
select product_id, product_description, product_status, std_shipping_qty
into i_product_id, i_product_description, i_product_status, i_std_shipping_qty
from inventory where product_id=(
select product_id from contract_item where contract_no=contract_no and item_no=item_no
);
if i_product_status='shipped' then
update contract_item set arrival_date=sysdate+7 contract_no=contract_no and item_no=item_no;
//这里的elseif 是连着写的
elseif i_product_status='ordered'then
updatecontract_item
setarrival_date=add_months(sysdate,1)//加一个月
whereitem_no=itemnoandcontract_no=contractno;
else
updatecontract_item
setarrival_date=add_months(sysdate,2)
whereitem_no=itemnoandcontract_no=contractno;
insertintoorders
values(100,i_product_id,i_std_shipping_qty);
end if;
end if;
commit;
end;

标签:铜川 兰州 黄山 衡水 湘潭 湖南 崇左 仙桃

巨人网络通讯声明:本文标题《oracle if else语句使用介绍》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266