pl sql使用3个表编写函数

Posted

技术标签:

【中文标题】pl sql使用3个表编写函数【英文标题】:pl sql writing a function using 3 tables 【发布时间】:2014-06-02 06:15:17 【问题描述】:

我在 pby 表中有一个名为 assign_to 的列,在 assign_to 中有用户、角色作为数据,当我选择用户时,我必须从 pus 表中检索该用户的详细信息,当我选择角色时,我必须从 pro 检索该角色的详细信息使用 pl/sql 函数的表。谁能帮我解决这个问题???

case
when assign_to='users'
then (select users from pus where pby.id=pus.id)
assign_to='roles 
then (select roles from pro where pro.id=pby.id)
else null
end

我尝试使用 case 语句,但它不起作用。

【问题讨论】:

它不工作”不是可接受的问题描述 【参考方案1】:

您缺少“角色”的右引号。 试试这个:

case 
when assign_to='users' then (select users from pus where pby.id=pus.id) 
when assign_to='roles' then (select roles from pro where pro.id=pby.id) 
else null 
end

【讨论】:

好吧,你应该把它添加到你的 pl/sql 函数中。

以上是关于pl sql使用3个表编写函数的主要内容,如果未能解决你的问题,请参考以下文章

pl/sql编程基础

oracle PL/SQL高级编程

(PL/)SQL 查看超过 3 个表,用户名和密码

编写一个 PL/SQL 代码来计算数字(1-10)的 2 的幂?

编写一个 PL/SQL Proc 并在 proc 中调用一个函数。输入是productid。打印出订购产品 ID 的客户姓名

求编写SQL语句,需要做运算的。 SQL里做4个表运算,估计要做存储过程的。