oracle下常用查询更新命令(身份证号判断男女,更新语句多表查询)

1.update数据

UPDATE VOL_BASEINFO b 
SET (b.vlbi_zzmmm, b.vlbi_mzm) = (select t.zz,t.mz from MY_ZHB_2014 t where t.xh= b.vlbi_xh)
where b.vlbi_xh like '14%';

2.根据身份证号判断男女
decode(mod(to_number(substr(‘身份证号’, 17, 1)), 2), 0, ‘2’, ‘1’)
a.先截取身份证的倒数第二位数字
b.被2整除
c.如果余数是0,则为2-女
d.如果余数是不为0,则为1-男

select decode(mod(to_number(substr('身份证号', 17, 1)), 2), 0, '2', '1')  
from dual

3.在sql中 insert into 中能插入select 语句,这里要求A和B的表结构是一样的

insert into A select * From B;

如果不一样,则需要使用:

insert into A(C1,C2,...) select C1,C2,... From B;
//这里C1、C2分别指A表与B表字段大小和类型都相同的列。
    原文作者:SQL
    原文地址: https://segmentfault.com/a/1190000008251851
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞