首页 > 解决方案 > 如何在 PL/SQL 中将布尔值转换为数字?

问题描述

我有一个布尔值,我正在尝试将其转换为 PL/SQL 中的数字。

PROCEDURE Test(
   contract_ IN VARCHAR2,
   mch_code_ IN BOOLEAN)   
IS
  val_ NUMBER;
BEGIN
  val_ := mch_code_.to_number();
...some code
END Test;

这是行不通的。

如何在 PL/SQL 中从布尔值转换为数字?

标签: oracleplsql

解决方案


你需要一个case

create PROCEDURE Test(
   contract_ IN VARCHAR2,
   mch_code_ IN BOOLEAN)   
IS
 val_ NUMBER;
BEGIN
  val_ := case when mch_code_ then 1 else 0 end;
...some code
END Test;

推荐阅读