数据库

 首页 > 数据库 > Oracle > 使用Oracle的MERGE同表关联未能添加数据的问题

使用Oracle的MERGE同表关联未能添加数据的问题

分享到:
【字体:
导读:
         摘要:使用Oracle的MERGE同表关联未能添加数据问题第一次接触Oracle的MERGE的更新或插入数据这个语法,上网了解了下写法,然后就动手应用在自己的项目里,下面有个例子:    MERGEINTOTable1t1    U... SyntaxHighlighter.all();...

使用Oracle的MERGE同表关联未能添加数据的问题
使用Oracle的MERGE同表关联未能添加数据问题
 
第一次接触Oracle的MERGE 的更新或插入数据这个语法,上网了解了下写法,
然后就动手应用在自己的项目里,下面有个例子:
     MERGE INTO Table1 t1
    USING ( select id,count from Table1 where id='001') t2 on (t1.id=t2.id)
    WHEN MATCHED THEN UPDATE SET t1.count=t1.count+1
     WHEN NOT MATCHED THEN  INSERT (count)  VALUES (1)
测试了下,结果发现不存在时添加不了数据,
后来上网找了原来是同表关联时如果不符合条件,using的数据集为null,
就添加不了数据了,必须用count()函数  www.2cto.com  
 
修改后:    
     MERGE INTO Table1 t1
    USING ( select count(*)  from Table1 where id='001') t2 on (t1.id=t2.id)
    WHEN MATCHED THEN UPDATE SET t1.count=t1.count+1
     WHEN NOT MATCHED THEN  INSERT (count)  VALUES (1)
 
 
作者 jingping
使用Oracle的MERGE同表关联未能添加数据的问题
分享到:
Oracle下的导入/导出(imp/exp)命令
Oracle下的导入/导出(imp/exp)命令 Oracle下的导入/导出(imp/exp)命令   Oracle 的导入实用程序 (Import utility) 允许从数据库提取数据, 并且将数据写入操作系统文件。    imp 使用的基本格式: imp[username[/password[@service]]] ,以下例举 imp 常用用法。   1. 获取帮助     imp help=y   2. 导入一个完...
认识Oracle数据库System Global Area(SG...
认识Oracle数据库System Global Area(SGA)(4) 认识Oracle数据库System Global Area (SGA)(4)   3.5 Log buffer命中率检查   检查语句:         SQL>select (req.value*5000)/entries.value "Ratio"   from v$sysstat req, v$sysstat entries   where req.name = 'redo log space requests'...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……