oracle单表字段更新问题

表名T_ONLINEOFFICE_ATTACHMENT,有主键ID,字段TITLE,FILE_TYPE。现在我将TITLE字段里的文件名截取后缀update到FILE_T... 表名 T_ONLINEOFFICE_ATTACHMENT,有主键ID,字段TITLE,FILE_TYPE。现在我将TITLE字段里的文件名截取后缀update到FILE_TYPE字段中,sql如下
T_ONLINEOFFICE_ATTACHMENT set FILE_TYPE=(
select m.filetype from (select t1.id mid,substr(t1.title,instr(t1.title,'.',-1,1)+1 ) filetype from T_ONLINEOFFICE_ATTACHMENT t1 ) m where m.mid=T_ONLINEOFFICE_ATTACHMENT.ID );
执行后显示更新了表中所有数据,但FILE_TYPE字段仍然为空。。。
而单独执行select t1.id mid,substr(t1.title,instr(t1.title,'.',-1,1)+1 ) filetype from T_ONLINEOFFICE_ATTACHMENT t1 是能得到所有记录的filetype的,截取的语句是正确的
为什么。。。?
展开
 我来答
射手幽灵伊
2013-10-10 · TA获得超过2716个赞
知道大有可为答主
回答量:4955
采纳率:81%
帮助的人:1960万
展开全部
m.mid=T_ONLINEOFFICE_ATTACHMENT.ID 这个条件是否正常。

你试运行 一下
select m.filetype
from (select t1.id mid,substr(t1.title,instr(t1.title,'.',-1,1)+1 ) filetype from T_ONLINEOFFICE_ATTACHMENT t1 ) m, T_ONLINEOFFICE_ATTACHMENT
where m.mid=T_ONLINEOFFICE_ATTACHMENT.ID
看是不是有结果。
追问
有结果,能得到filetype,说明条件应该是对的
人生最美丽的事情
2013-10-10
知道答主
回答量:10
采纳率:0%
帮助的人:2.9万
展开全部
不能这样吗,怎么这么复杂
update T_ONLINEOFFICE_ATTACHMENT set FILE_TYPE=substr(t1.title,instr(t1.title,'.',-1,1)+1 );
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式