select seq_lt_id.nextval,code,cdescription,(case clevel when null then 1 end) )
from noahark.v_noah_flex_com;这样写可以吗?
from noahark.v_noah_flex_com;这样写可以吗?
解决方案 »
- 大神们帮忙看看 这段sql 语句 报sql没有正确结束
- ORA-00600: 内部错误代码,参数: [qctcte1], [0], [], [], [], [], [], []
- 同一个实例中,跨用户触发器如何写
- ORACLE中数据的读取
- 大牛们出来帮看看,关于四舍五入精度问题。。。小弟现在没分,给的少了点。帮帮忙啊
- update order by 如何实现两个关联呢?
- 问一下触发器的sqlcode判断问题
- oracle导入问题(新手提问)
- 举报倒分贴的贴子哪里去了?
- 我有一个有80个字段的表,我想复制出另一个表相同结构的表,如何做?
- Oracle 存储过程 应该是简单问题
- Oracle触发器在MIS开发中的应用分析
如果没有其他分支,用nvl多简单啊。
from noahark.v_noah_flex_com;帮我看看这句话哪有毛病? 谢谢了.
例:
select comm from emp where comm is not null
用 nvl(clevel , 1)
case when null then 1 else clevel end 这个是不可以的
case when not null then 1 else clevel end 非要用not null,可以这样写
case when clevel is not null then 1 else clevel end
create or replace procedure Pro_test_3 as
begin
insert into huhb (cs_name,srid,auth_srid ,auth_name,wktext) select (cs_name,srid,case when auth_srid = 1 then 11 when auth_srid = 2 then 22 when auth_srid = 3 then 3 when auth_srid = 4 then 44 end ,auth_name,wktext)from ttest_1 ;
commit;
end;
begin
insert into huhb (cs_name,srid,auth_srid ,auth_name,wktext) select cs_name,srid,case when auth_srid = 1 then 11 when auth_srid = 2 then 22 when auth_srid = 3 then 3 when auth_srid = 4 then 44 end ,auth_name,wktext from ttest_1 ;
commit;
end;---or:create or replace procedure Pro_test_3 as
begin
insert into huhb (cs_name,srid,auth_srid ,auth_name,wktext)
select cs_name,srid,
case auth_srid when 1 then 11 when 2 then 22 when 3 then 3 when 4 then 44 /*else ?*/end ,
auth_name,wktext
from ttest_1 ;
commit;
end;
这叫啥语法啊。 from 前面连空格都没有
begin
insert into huhb (cs_name,srid,auth_srid ,auth_name,wktext)
select cs_name,srid,
case auth_srid when 1 then 11 when 2 then 22 when 3 then 3 when 4 then 44 /*else ?*/end ,
auth_name,wktext
from ttest_1 ;
commit;
end;
这样写还是编译不过去.
--什么错误单独看case应该没有错误了
select
case 1 when 1 then 11 when 2 then 22 when 3 then 3 when 4 then 44 /*else ?*/end
from dual ;
--结果11
begin
--insert into huhb (cs_name,srid,auth_srid ,auth_name,wktext) select (cs_name,srid,case when auth_srid = 1 then 11 when auth_srid = 2 then 22 when auth_srid = 3 then 3 when auth_srid = 4 then 44 end ,auth_name,wktext) from ttest_1 ;
insert into huhb (cs_name,srid,auth_srid ,auth_name,wktext)
select (cs_name,srid,
case auth_srid when 1 then 11 when 2 then 22 when 3 then 3 when 4 then 44 end ,auth_name,wktext)
from ttest_1 ;
commit;
end;这个是我写的语句,我在SQL WINDOWS窗口里编译,按F8也不提示什么?就是左边存储过程名那是叉.
我感觉加()应该没什么问题.但是我把()去了就行了.怪不怪.谢谢了,
from noahark.v_noah_flex_com;