Mysql 如何在oracle数据库中调用此函数?

Mysql 如何在oracle数据库中调用此函数?,mysql,sql,oracle,Mysql,Sql,Oracle,如果要调用PL/SQL块 CREATE OR REPLACE FUNCTION PRODUCT(PRODUCT_CODE PLS_INTEGER ) RETURN NUMBER IS PRODUCT NUMBER:=0; BEGIN SELECT PRODUCT_CODE INTO PRODUCT FROM PGIM_PRODUCT WHERE PRODUCT_CODE=PROD_DESC ; RETURN PRODUCT; END PRO

如果要调用PL/SQL块

CREATE OR REPLACE FUNCTION PRODUCT(PRODUCT_CODE PLS_INTEGER ) 
RETURN NUMBER
IS
    PRODUCT NUMBER:=0;
    BEGIN
       SELECT  PRODUCT_CODE INTO PRODUCT FROM PGIM_PRODUCT
       WHERE PRODUCT_CODE=PROD_DESC ;
    RETURN PRODUCT;
END PRODUCT;
如果要在查询中调用它

DECLARE
return_val NUMBER;
BEGIN
return_val := product(101);
END;
如果名称与您正在调用的模式位于不同的模式中,请对其进行限定

编辑:

“在用户定义函数的帮助下创建单个查询……在用户定义函数中传递一个参数,即product_code及其从表PGIM_product返回的product_desc”

如果您想要这样,那么您的查询是错误的

SELECT product(100) FROM dual;

“呼叫”是程序的一个术语。在查询中使用函数的方式必须与使用任何常用内置函数的方式相同<代码>从…PS中选择id,产品(id)作为代码。您是否真的提供描述(您检查PGIM\U PRODUCT.PROD\U DESC列)作为产品代码(参数名称)?PGIM\U PRODUCT是单独的表,我希望使用PRODUCT\U code参数来描述产品。product_DESC是PGIM_product中存在的一个列名,请您详细解释一下,您想做什么?从PGIM_product中选择product_CODE进入product,product_CODE=PROD_DESC;在用户定义函数的帮助下创建一个查询……在用户定义函数中传递一个参数,即product_code及其返回的product_desc,该参数来自表PGIM_PRODUCTERROR第13行,第8列,ending_第13行,ending_第12列,找到“FETCH”,应为:-或-对于具有开始-或-或-或-或-或-和-或-| |-或-/-或-***-或-(+)-或-%的顺序-或-相交减去并集-或-连接组。[-或-:@CASE CONNECT_BY_根十进制数存在假浮点整数NEW Previor SQL真-或-(*+-在继续光标日期标识符MOD MODEL MULTISET NOT NULL REM字符串当年份
CREATE OR REPLACE FUNCTION PRODUCT(PRODUCT_CODE_IN PLS_INTEGER ) 
RETURN varchar2
IS
    PRODUCT_DESC varchar2(32767);
    BEGIN

       SELECT  PRODUCT_DESC INTO PRODUCT_DESC FROM PGIM_PRODUCT
       WHERE PRODUCT_CODE =  PRODUCT_CODE_IN;

    RETURN PRODUCT_DESC;
END PRODUCT;