+ -
当前位置:首页 → 问答吧 → 数据库语句求助

数据库语句求助

时间:2011-09-14

来源:互联网

update (select case when(instr(t.ms,'货物')=0)then ms 
else substr(t.ms,0,instr(t.ms,'货物')+1)
end case,t.* from t_h t) set hms=case
这条语句是什么意思??能给详细解释下吗??

作者: matrix2012   发布时间: 2011-09-14

(select case when(instr(t.ms,'货物')=0)then ms  
else substr(t.ms,0,instr(t.ms,'货物')+1)
end case,t.* from t_h t) 相当于一个表

update 表 set hms=case 看懂了?

作者: java3344520   发布时间: 2011-09-14

(select case when(instr(t.ms,'货物')=0)then ms  
else substr(t.ms,0,instr(t.ms,'货物')+1)
end case,t.* from t_h t) 就解释下这句话吧

分析一下结构,只需弄清楚case when(instr(t.ms,'货物')=0)then ms  
else substr(t.ms,0,instr(t.ms,'货物')+1)
end case,这句话吧 对吧。case when...then...else...end case 这个结构你应该知道吧

when(instr(t.ms,'货物')=0) then ms 就是说如果'货物'没有在t.ms中出现 就select ms 
否则 substr(t.ms,0,instr(t.ms,'货物')+1) 就select t.ms的前instr(t.ms,'货物')+1字符

这句话不是例题吧 感觉没什么意义 而且条理不是很清晰 哈哈 菜鸟愚见

作者: xuhao167   发布时间: 2011-09-14

恩,比我好多了,我刚开始也觉得是这个意思,执行了数据没有变化,还以为我理解错了,原来是数据太多了,没刷新出来,现在已经出来了,谢谢了。

作者: matrix2012   发布时间: 2011-09-14

......hh

作者: xuhao167   发布时间: 2011-09-14