oracle 同表,字段A取前2位数,如果等于56,赋予字段B值01,如果等于36赋予字段B值02 这个语句怎么写?忘记补充了micro0369的语句可以用,但我那一列有数据,怎么修改过来?
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/04 20:00:31
![oracle 同表,字段A取前2位数,如果等于56,赋予字段B值01,如果等于36赋予字段B值02 这个语句怎么写?忘记补充了micro0369的语句可以用,但我那一列有数据,怎么修改过来?](/uploads/image/z/15116989-13-9.jpg?t=oracle+%E5%90%8C%E8%A1%A8%2C%E5%AD%97%E6%AE%B5A%E5%8F%96%E5%89%8D2%E4%BD%8D%E6%95%B0%2C%E5%A6%82%E6%9E%9C%E7%AD%89%E4%BA%8E56%2C%E8%B5%8B%E4%BA%88%E5%AD%97%E6%AE%B5B%E5%80%BC01%2C%E5%A6%82%E6%9E%9C%E7%AD%89%E4%BA%8E36%E8%B5%8B%E4%BA%88%E5%AD%97%E6%AE%B5B%E5%80%BC02+%E8%BF%99%E4%B8%AA%E8%AF%AD%E5%8F%A5%E6%80%8E%E4%B9%88%E5%86%99%3F%E5%BF%98%E8%AE%B0%E8%A1%A5%E5%85%85%E4%BA%86micro0369%E7%9A%84%E8%AF%AD%E5%8F%A5%E5%8F%AF%E4%BB%A5%E7%94%A8%EF%BC%8C%E4%BD%86%E6%88%91%E9%82%A3%E4%B8%80%E5%88%97%E6%9C%89%E6%95%B0%E6%8D%AE%EF%BC%8C%E6%80%8E%E4%B9%88%E4%BF%AE%E6%94%B9%E8%BF%87%E6%9D%A5%EF%BC%9F)
oracle 同表,字段A取前2位数,如果等于56,赋予字段B值01,如果等于36赋予字段B值02 这个语句怎么写?忘记补充了micro0369的语句可以用,但我那一列有数据,怎么修改过来?
oracle 同表,字段A取前2位数,如果等于56,赋予字段B值01,如果等于36赋予字段B值02 这个语句怎么写?
忘记补充了
micro0369的语句可以用,但我那一列有数据,怎么修改过来?
oracle 同表,字段A取前2位数,如果等于56,赋予字段B值01,如果等于36赋予字段B值02 这个语句怎么写?忘记补充了micro0369的语句可以用,但我那一列有数据,怎么修改过来?
update 表 set
b = case when substr(a,1,2) = '56' then '01' when substr(a,1,2) = '36' then '02' end
update table_name set b=decode(substr(a,1,2)='56',01,substr(a,1,2)='36',02,b)
update 表 set b=decode(substr(a,1,2),56,'01',36,'02‘,‘’);
如果双不等于56,又不等 于36时,又不想改B原来的值,语句改为
对于你补充的问题,如果B列原来就有数据,会自动根据条件更新好的。
update 表 set b=decode(substr(a,1,2),56,'01',36,'02‘,b);
这个就是d...
全部展开
update 表 set b=decode(substr(a,1,2),56,'01',36,'02‘,‘’);
如果双不等于56,又不等 于36时,又不想改B原来的值,语句改为
对于你补充的问题,如果B列原来就有数据,会自动根据条件更新好的。
update 表 set b=decode(substr(a,1,2),56,'01',36,'02‘,b);
这个就是decode函数的用法。
参见以下解释:
DECODE函数相当于一条件语句(IF).它将输入数值与函数中的参数列表相比较,根据输入值返回一个对应值。函数的参数列表是由若干数值及其对应结果值组成的若干序偶形式。当然,如果未能与任何一个实参序偶匹配成功,则函数也有默认的返回值。区别于SQL的其它函数,DECODE函数还能识别和操作空值.
其具体的语法格式如下:
DECODE(input_value,value,result[,value,result…][,default_result]);
其中:
input_value 试图处理的数值。DECODE函数将该数值与一系列的序偶相比较,以决定最后的返回结果
value 是一组成序偶的数值。如果输入数值与之匹配成功,则相应的结果将被返回。对应一个空的返回值,可以使用关键字NULL于之对应
result 是一组成序偶的结果值
default_result 未能与任何一序偶匹配成功时,函数返回的默认值
收起