当前位置: 首页 > 面试题库 >

Oracle:在函数中返回多个值

杜诚
2023-03-14
问题内容

我正在尝试从使用两个表(员工和部门)的函数返回%rowtype中的多个值,但是它对我不起作用。

create or replace function get_employee
 (loc in number)
return mv_emp%rowtype
as  
   emp_record mv_emp%rowtype;
begin
   select a.first_name, a.last_name, b.department_name into emp_record 
   from employees a, departments b 
   where a.department_id=b.department_id and location_id=loc;

   return(emp_record);  
end;

问题答案:

上面的函数编译没有任何错误?是什么类型的MV_EMP?理想情况下,它应该像下面这样。

create or replace type emp_type
(
first_name varchar2(20)
, last_name varchar2(20)
, depart_name varchar2(20)
)
/
create or replace function get_employee
 (loc in number)
return emp_type
as  
   emp_record emp_type;
begin
   select a.first_name, a.last_name, b.department_name into emp_record 
   from employees a, departments b 
   where a.department_id=b.department_id and location_id=loc;

   return(emp_record);  
end;


 类似资料:
  • 问题 你希望构造一个可以返回多个值的函数 解决方案 为了能返回多个值,函数直接return一个元组就行了。例如: >>> def myfun(): ... return 1, 2, 3 ... >>> a, b, c = myfun() >>> a 1 >>> b 2 >>> c 3 讨论 尽管myfun()看上去返回了多个值,实际上是先创建了一个元组然后返回的。 这个语法看上去比较奇怪,实际上我

  • 本文向大家介绍PowerShell函数一次返回多个返回值示例,包括了PowerShell函数一次返回多个返回值示例的使用技巧和注意事项,需要的朋友参考一下 本文介绍在自定义PowerShell函数时,如何让函数返回值,如何接收返回值,如何让不相干的内容不放到返回值数组中。 PowerShell函数体中的任何输出,一般来说,都会以返回值的形式返回给函数调用者。多个输出的内容是放到一个返回值数组中的。

  • 问题内容: 如何快速从函数返回3个相同类型(Int)的单独数据值? 我试图返回一天中的时间,我需要将小时,分钟和秒作为单独的整数返回,但是所有这些都来自同一个函数,这可能吗? 我想我只是不了解返回多个值的语法。这是我正在使用的代码,我在last(return)行上遇到了麻烦。 任何帮助将不胜感激! 问题答案: 返回一个元组: 然后将其调用为: 要么:

  • 问题内容: 是否有可能具有两个返回的函数,如下所示: 如果是这样,我如何才能分别获得每份退货? 问题答案: 无法返回两个变量。虽然,您 可以 传播一个数组并返回它;创建条件以返回动态变量,等等。 例如,此函数将返回 在应用中: 如果您都想要它们,可以稍微修改一下功能

  • 本文向大家介绍在js中函数返回多个值有哪些方法?相关面试题,主要包含被问及在js中函数返回多个值有哪些方法?时的应答技巧和注意事项,需要的朋友参考一下 使用数组的方式 2.将数据封装到json里面 3.return取下标 ` <script type="text/javascript"> function getData() { return ["oec2003", 25] } function

  • Go语言内置支持多返回值,这个在Go语言中用的很多,比如一个函数同时返回结果和错误信息。 package main import "fmt" // 这个函数的返回值为两个int func vals() (int, int) { return 3, 7 } func main() { // 获取函数的两个返回值 a, b := vals() fmt.Println(a