Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何检查多个表中是否存在该值_.net_Database_Oracle_C# 4.0_Oracle Sqldeveloper - Fatal编程技术网

.net 如何检查多个表中是否存在该值

.net 如何检查多个表中是否存在该值,.net,database,oracle,c#-4.0,oracle-sqldeveloper,.net,Database,Oracle,C# 4.0,Oracle Sqldeveloper,我要将机器生成的文本文件中的一些数据插入到oracle数据库中的单个表中。但是,这些值可以存在于同一数据库中的多个表中,该数据库先前通过不同的源进行了更新。因此,我想检查该值是否存在并与其他表中的值匹配。为此,我创建了一个新单表中名为Ismatching的列。但我不知道如何检查该值是否存在。我正在使用ADO.NET将数据推入oracle数据库。以下是我用于从多个表MNU站点获取数据的查询,MN_CELL和MN_PSITE,我要插入的新表是MN_tabletest,我在其中创建了一个新列Ismat

我要将机器生成的文本文件中的一些数据插入到oracle数据库中的单个表中。但是,这些值可以存在于同一数据库中的多个表中,该数据库先前通过不同的源进行了更新。因此,我想检查该值是否存在并与其他表中的值匹配。为此,我创建了一个新单表中名为Ismatching的列。但我不知道如何检查该值是否存在。我正在使用ADO.NET将数据推入oracle数据库。以下是我用于从多个表MNU站点获取数据的查询,MN_CELL和MN_PSITE,我要插入的新表是MN_tabletest,我在其中创建了一个新列Ismatching。下面是我用来从多个表中获取数据的查询,以及我要插入到表MN_tabletest中的同一列值。但我不知道如何更新表MN_tabletest中的新列Ismatching对不起,有人能带我来吗

SELECT        MN_SITE.TECH_CODE, MN_SITE.VENDOR_CODE, MN_SITE.SITE_ID, MN_SITE.BSC_ID, MN_PSITE.GEO_ZONE_CODE, MN_PSITE.REGION_CODE, MN_CELL.TALIM, 
                         MN_CELL.BTS_NAME, MN_CELL.CELL_INFO, MN_CELL.CELL_INFO AS EXPR1, MN_CELL.CELL_NAME, MN_CELL.BSIC, MN_CELL.SECTOR_NAME, 
                         MN_CELL.HOPPING_MODE, MN_CELL.BSPWR, MN_CELL.DEFINED_TCH_FRQ, MN_CELL.TRX_NOS, MN_CELL.NO_OF_FREQ, MN_CELL.HSN, MN_CELL.LAC, 
                         MN_CELL.BCC, MN_CELL.NCC, MN_CELL.BAND, MN_CELL.CELL_SLNO, MN_CELL.CELL_ID
FROM            MN_CELL INNER JOIN
                         MN_SITE ON MN_CELL.SITE_SLNO = MN_SITE.SITE_SLNO INNER JOIN
                         MN_PSITE ON MN_SITE.PSITE_SLNO = MN_PSITE.PSITE_SLNO
WHERE        (MN_CELL.CELL_SLNO = '128691')
更新


我不是同时执行插入和更新操作。我是在表中插入行,但其中一个列ISMatch是基于当前插入行的,如果其他多个表中存在行

,正如oldProgrammer建议的那样,您可以使用MERGE语句将数据插入到实际表中,而不是首先将数据插入ISMatch列中

合并的语法: 合并到实际的_表A中 使用从参考表格B中选择B_列 在A.column1=B.column1上 匹配后,更新集合B.column2=。。。。 如果不匹配,则插入A.column1、A.column2等,。。。。 值A.column1、A.column2等

这里,column1将是一个主列,用于检查数据是否存在


有关合并的详细信息,请检查:

查看合并语句。@OldProgrammer能否提供一个简单的原型。我不是同时执行插入和更新操作。我是在表中插入行,但其中一列IsMatch是基于其他多个表中存在的当前插入行。如果要从一个select中插入字段应从另一个表中读取数据,请使用该字段的内部select@shA.t我不知道怎么做,你能给我代码吗?你可以根据我发布的查询编写查询。我的意思是基于表mnu站点、mnu单元格和mnu PSITE