我在PL/SQL中有以下CASE
CASE
WHEN v_line_item.custom_segment = 'CND1' THEN
v_current_col := v_col_lcy_tps;
WHEN v_line_item.custom_segment = 'CND2' THEN
v_current_col := v_col_lcy_ib;
WHEN v_line_item.custom_segment = 'CND3' THEN
v_current_col := v_col_lcy_gm;
WHEN v_line_item.custom_segment = 'CND4' THEN
v_current_col := v_col_lcy_pb;
WHEN v_line_item.custom_segment = 'CND5' THEN
v_current_col := v_col_lcy_bb;
END CASE;
Run Code Online (Sandbox Code Playgroud)
代码编译得很好,但是当我执行存储过程时,我得到以下错误:
ORA-06592:执行CASE语句时未找到CASE
所以当我删除CASE时; 存储过程将无法编译.我可以得到的唯一示例,在select语句中使用CASE,我不想在select语句中使用它,我想设置我的变量而不需要一堆IF THEN ELSE语句.
我需要解析Excel工作表.现在我将每个工作表保存为.csv并且效果很好.我使用OpenCSV来解析文件等,但创建这些.csv文件是一件痛苦的事.
在Excel中以.csv保存单个工作表的最简单,最快捷的方法是什么?我假设某种VBA宏可以完成这项工作,但由于我不是VBA程序员,我不知道该怎么做.也许我只能以某种方式记录一个宏?
我有一个先前的查询连接,在Oracle中构建我的树结构.这工作正常,但我有一个组件,需要一个对称的树来正确显示.
所以我的想法是如果节点位于低于最高级别的级别,则向树中注入更多节点.
例如,如果我们有一棵树
Root
+- Node 1
+- Leaf 1 (Level 3)
+- Node 2
+- Node 3
+- Leaf 2 (Level 4)
Run Code Online (Sandbox Code Playgroud)
我需要在运行时修改树,如下所示:
Root
+- Node 1
+- Copy of Node 1
+- Leaf 1 (Level 4)
+- Node 2
+- Node 3
+- Leaf 2 (Level 4)
Run Code Online (Sandbox Code Playgroud)
这将使我的树在运行时对称,以使组件工作.
是否有一个简单的Oracle查询或函数可以帮助这个或一些可以帮助这个的SQL语句?