声明局部变量:如何将此mssql脚本转换为oracle?

发布于 2025-01-03 04:40:50 字数 205 浏览 0 评论 0原文

declare @amount float
declare @result char (20)

select @amount = cost from PurchaseDoc where id = 1

if @amount > 0 set @result = 'ok'
else set @result = 'empty'

print @result
declare @amount float
declare @result char (20)

select @amount = cost from PurchaseDoc where id = 1

if @amount > 0 set @result = 'ok'
else set @result = 'empty'

print @result

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

濫情▎り 2025-01-10 04:40:50

以下是可以针对 Oracle 数据库执行的脚本的一种表示形式:

DECLARE
    amount    NUMBER;
    result    varchar2(20);
BEGIN
    SELECT SUM(cost) INTO amount
      from PurchaseDoc
     WHERE id = 1;

    if (amount > 0) 
    then
        result := 'ok';
    else 
        result := 'empty';      
    end if;

    dbms_output.put_line(result);    
END;
/

请参阅此 链接,获取有关 dbms_output 的一些有用信息。
我建议查看一些 PL/SQL 教程,例如位于 www.plsql-tutorial.com< 的教程/a>.

编辑
根据 Cade Roux 的建议更新了 select 语句

Here is one representation of your script which can be executed against an Oracle database:

DECLARE
    amount    NUMBER;
    result    varchar2(20);
BEGIN
    SELECT SUM(cost) INTO amount
      from PurchaseDoc
     WHERE id = 1;

    if (amount > 0) 
    then
        result := 'ok';
    else 
        result := 'empty';      
    end if;

    dbms_output.put_line(result);    
END;
/

See this link for some useful information about dbms_output.
I recommend taking a look at some PL/SQL tutorials, such as the ones located at www.plsql-tutorial.com.

EDIT
Updated select statement based on suggestion by Cade Roux

野鹿林 2025-01-10 04:40:50

这里确实不需要 PL/SQL,带有“解码”功能的普通 select 语句就可以做到这一点。

SELECT DECODE(SUM(COST),0,'empty','ok') FROM PurchaseDoc where id = 1;

There is really no need for PL/SQL here, a normal select statement with 'decode' function can do the trick.

SELECT DECODE(SUM(COST),0,'empty','ok') FROM PurchaseDoc where id = 1;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文