本来才接触PostgreSQL 有写语法方面的东西不清楚 请人帮忙解决一下
create function findByParentId(@Id int)
returns @t_Level table(deptId int,t_level int)
as
begin
declare @level int
set @level = 1
insert @t_Level select @Id,@level
while @@rowcount > 0
begin
set @level = @level + 1
insert @t_Level select a.DeptId,@level from Department a,@t_Level b
where a.ParentDeptId = b.deptId and b.t_level = @level-1
end
return
end
以上代码是在SQL Server中验证通过了的代码
请哪位高手 帮忙用PostgreSQL 实现同样的效果 谢谢了 改写成PostgreSQL 语法就行 在线等。

解决方案 »

  1.   

    看了 问题就是 PostgreSQL  有没有 表变量的概念?
      

  2.   

    没有,POSTGRESQL不是SQLSERVER,呵呵
      

  3.   

    你可以直接用 Composite Types + Arrays 来实现。
      

  4.   

    好的我试试 其实我是才接触 PostgreSQL 语法不清楚、。
      

  5.   

    楼上的大哥  你说的是 Composite Types + Arrays ?