小编Tai*_*aul的帖子

定义层次结构查询中子项的排序顺序

我想知道通过sequence_within_parent列在层次结构查询中对子项进行排序的Oracle SQL查询.

示例数据集和查询是:

create table tasks (task_id                 number
                    ,parent_id               number
                    ,sequence_within_parent number
                    ,task                    varchar2(30)
                    );
insert into tasks values ( 1, NULL, 0, 'Task 1');
insert into tasks values ( 2,    1, 1, 'Task 1.1');
insert into tasks values ( 3,    1, 2, 'Task 1.2');
insert into tasks values ( 4,    2, 2, 'Task 1.1.2');
insert into tasks values ( 5,    3, 1, 'Task 1.2.1');
insert into tasks values ( 6,    2, 1, 'Task 1.1.1');
insert into tasks values ( …
Run Code Online (Sandbox Code Playgroud)

sql oracle hierarchy sql-order-by

8
推荐指数
1
解决办法
4009
查看次数

在'use constant'中从perl heredoc中删除无关空格的perl语法是什么

通过我的代码库中的各种代码,我有以下结构.对于我自己和其他人来说,使用heredoc对于理解代码是有好处的,但是通过网络将数据传输到数据库提供了不必要的批量.

   use constant FIND_OBJECTS_SQL => <<'    END_SQL';
       select object_name
             ,object_type
             ,0 PAC_REF
             ,owner
       from   all_objects
       where  (object_name like upper(:1)
            or object_name = upper(:1))
       and    object_type not in ('SYNONYM'
                                 ,'PACKAGE BODY')
   END_SQL

   $object_data = $dbh->selectall_arrayref(FIND_OBJECTS_SQL, $object_name);
Run Code Online (Sandbox Code Playgroud)

将"s /\s +// g"搜索和替换运算符应用于赋值的语法是什么.

以下两次尝试不起作用.

use constant FIND_OBJECTS_SQL => s/\s+/ /g <<'    END_SQL';
Run Code Online (Sandbox Code Playgroud)

产生

Use of uninitialized value $_ in substitution (s///) at U:\junk.pl line 5.
Argument "    END_SQL" isn't numeric in left bitshift (<<) at U:\junk.pl line 5.
Run Code Online (Sandbox Code Playgroud)

use constant FIND_OBJECTS_SQL => <<' …
Run Code Online (Sandbox Code Playgroud)

perl replace constants heredoc

3
推荐指数
1
解决办法
198
查看次数

如何在perl中分配监视变量来打印消息?

我的目标是每次将值分配给"受监视"变量时,我想:

  1. 在日志文件中注册该更改或将其显示在状态区域中
  2. 保持代码整洁.

一个真实世界的例子是当光标在文档周​​围移动时,状态栏中的编辑器中的光标位置会发生变化.

我理解,目标1.很容易满足以下片段.

$a = 52;
print LOG "\$a = [$a]\n";
Run Code Online (Sandbox Code Playgroud)

我的偏好是代码看起来像这样:

$a = 52;
Run Code Online (Sandbox Code Playgroud)

在其他地方(一个物体,一个过程,重载的操作员),神奇地发生了打印.

perl

1
推荐指数
1
解决办法
65
查看次数

标签 统计

perl ×2

constants ×1

heredoc ×1

hierarchy ×1

oracle ×1

replace ×1

sql ×1

sql-order-by ×1