具体需求是这样的:
客户上传一个文件,
取出文件内容。 
与数据库中的内容对比数据量1W个左右
比如说
文件内容 id  name  age tel 等
表       id  name  age  tel 等  (id是唯一)
需要查询的表,不值一个表,需要连表查询。但ID是唯一的由取得文件的id  查询查数据库的id 
然后与文件的name ,age,tel   与查询出来的对比。如果一个ID   name不同 就得到一条不同的记录
如果一个ID   name,age 都不同 就得到两条记录数据库是oracle, 需要查询的几张表中,有个别表数据比较多。
怎么优化流程?提高效率?请教了

解决方案 »

  1.   

    肯定不能用程序比较,应该用sql查询语句搞定。
    如果一个ID name不同 就得到一条不同的记录
    如果一个ID name,age 都不同 就得到两条记录可以把id、name、age当作条件到数据库中查询,有数据就重复。没有数据就不是重复的。
      

  2.   

    不好意思, 可能是我没表达清楚。如果简单的实现 就应该这样
    用通过文件得来的id  作为条件 到数据库中查询, 得到这个id 对应的name ,age  
    然后 与文件的name ,age 对比。
    如果有一个字段不同  就产生一条不同的记录, 这记录集要返回给客户看。代码实现的话很简单。
    关键是效率问题
    因为上传的是一个文件,文件里有很多行数据。数据量以1W作为例子。
      

  3.   

    建索引啊。。这是最基本的查询 就靠数据库的性能了 好像也没啥可以提高效率的 1w行的查询量对oracle来说应该算不了什么 效率问题最有可能出在IO啊 字符串处理啊什么的方面
      

  4.   

    貌似也没啥好提高效率的,以ID,name ,age 三个字段做索引,每次按这三个条件去查询,以1w条数据量来算,查询1万次。