--添加车牌号
INSERT INTO BASE_BUSINFO (COMPANY_CODE, USERCODE, BUSCODE, BUSLINE, RECORDER, RECORDER_DATE)
SELECT COMPANY_CODE, USERCODE, '粤A' ||substr(BUSCODE,-5,5), BUSLINE, RECORDER, RECORDER_DATE  from BASE_BUSINFO 
where buscode like '粤A-13018'
--修改store_info 关联车号
UPDATE STORE_INFO SET BUSCODE = '粤A' ||substr(BUSCODE,-5,5)
where buscode like '粤A-13018'
--删除businfo中的错误车牌
DELETE FROM BASE_BUSINFO WHERE BUSCODE like '粤A-13018' 我想通过车牌将上面三条SQL语句合并成一个语句,求语句!~ 谢谢!~

解决方案 »

  1.   

    数据库版本?如果是支持merge into的Delete when子句的话,merge into也许能利用一下。不过你这里只有自己的一句sql、没有表结构、没有业务需求说明,只好路过up一下
      

  2.   

    搞错了,merge into貌似也不能做。sorry。
      

  3.   

    一条语句?可以使用视图更新,但是需要buscode为主键
    两条
    update BASE_BUSINFO set BUSCODE=replace(buscode,'-')
    where buscode = '粤A-13018' ;
    UPDATE STORE_INFO SET BUSCODE = replace(buscode,'-') 
    where buscode = '粤A-13018' ;
    成功则commit,有一条失败则rollback
      

  4.   

    除非存储过程或函数,一条sql看来搞不定。。