灵光一闪
数组遍历删除1234567891011121314151617181920212223242526List<String> list = new ArrayList<>();list.add("1");list.add("2");list.add("3");list.add("1");list.add("2");list.add("2");list.add("2");//删除数组中的2//错误写法for(int i = 0; i < list.size();i++){ if(list.get(i).equals("2")){ list.remove(i); }}Result: [1,3,1,2]//正确 应该用倒序删除for(int i = list.size() -1; i >=0 ;i--){ if(...
Oracle——分页查询出现重复数据问题的分析与解决
Oracle——分页查询出现重复数据问题的分析与解决 问题发生在一次分页查找时 查找一组数据 根据客户ID查找 每页20条 共73条 出现了重复项 ,总数对了但数据不对,分析原因 问题分析可能的问题原因 数据库本身有重复数据。 分页数据有交集 排序字段不唯一 在作分页查询时,其中使用的排序条件数据是根据用户ID(但在此表中不唯一,非主键) 排序。结果查询的结果,很多页的数据都有重复的。在排除其他问题后,考虑到应该是排序的字段值不唯一,造成每次查询时的数据排序不一定都是一样,每次查询的分页顺序结果不一致。 在Oracle分页查询中,我们采用类似示例所示的公认的比较高效的数据库分页查询语句(Effective Oracle by Design中有描述、众多oracle使用者也做过测试)。这里的ROWNUM是一个伪列,它是oracle为查询结果所编的一个号,第一行的RN为1,第二行为2,以此类推。 因为oracle是按块进行读取数据的,如果数据按顺序存储,则可能使读取出来的数据是按顺序的,所以我们就会误解为默认排序。事实上,oracle没有进行任何排序操作,如果s...
Oracle sql语句使用
ORACLE数据库实践文档 1.登录sql编辑器 12sqlplus / as sysdba(一般使用)conn /as sysdba 2.查询当前实例 1234select name from v$database;select instance_name from v$instance;--查询所有的实例show parameter instance; 3.切换实例 1export ORACLE_SID=ILSDB 4.查询所有表空间 123select t1.name,t2.name from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;(带路径)select * from v$tablespace;select tablespace_name from dba_tablespaces; 5.查询某个用户的表空间 12345678910select default_tablespace from dba_users where username='CFS';--查询表空间下有多少用户(t...