Oracle小记之取最大值作为id,主要内容是对标识表和标识类型表进行CRUD的操作。没有难度的敲代码,但是有两个地方我想记录下来的
boss布置个任务,主要内容是对标识表和标识类型表进行CRUD的操作。没有难度的敲代码,但是有两个地方我想记录下来的。
首先,先把表结构给出。
标识表(REPOT_BS):
标识类型(REPOT_CATEGORY):
好,第一点是,插入数据时, 取标识表的最大值+1作为id。SQL:
其中,红色部分就是 取表示表的最大值+1作为id, max是最大值函数,NVL(A,B)函数表示加入A的值为null,那就返回B,否则返回A。max和nvl都是Oracle的系统函数。
注: oracle是不分大小写的。- _ -
第二点 : 判断某标识类型下的是否有启动的标识。SQL:
如果返回值大于0 ,则该标识类型下有启动的标识,,反之小于0,则没有。这句SQL是在删除标识类型的时候,要预先判断的。