sql数据库
单个表中的10000条数据的查询时间?
查询比较数据量大的时候,根本不行
以要写入的数据进行查找,然后判断
记录指针
的位置,指针不在头或尾,就是有重复
select user_code,user_name,related_code from tablename t left join tablename s on tuser_code=srelated_code;
根据你提供的测试数据,输出结果还是这样,不变。
------------------------------------------------------
通过你补充了问题说明,我分析了下,程序如下:
SQL> select from re_a;
USER_CODE USER_NAME RELATED_CODE
---------- -------------------------------- ------------
1001 张三 1002
1002 李四 1001
1003 王五 1004
1004 赵六 1003
SQL> select from re_bak;
USER_CODE USER_NAME RELATED_CODE
---------- -------------------------------- ------------
SQL> exec pro_relation_baidu;
1001张三1002
1003王五1004
PL/SQL procedure successfully completed
SQL>create or replace procedure pro_relation_baidu IS
/CREATE TABLE re_a(user_code NUMBER,user_name VARCHAR(32),related_code NUMBER);
INSERT INTO RE_A VALUES ('1001', '张三', '1002');
INSERT INTO RE_A VALUES ('1002', '李四', '1001');
INSERT INTO RE_A VALUES ('1003', '王五', '1004');
INSERT INTO RE_A VALUES ('1004', '赵六', '1003');
SELECT FROM re_a;
create table re_bak as select from re_a where 1=2;/
CURSOR cur_rea IS SELECT FROM re_a;
CURSOR cur_bak IS SELECT FROM re_bak;
--v_rea re_a%ROWTYPE;
j NUMBER;
BEGIN
DELETE re_bak;
FOR i IN cur_rea LOOP
SELECT COUNT(tUSER_CODE) INTO j FROM re_bak t WHERE
tUSER_CODE=iRELATED_CODE AND tRELATED_CODE=iUSER_CODE;
IF j=0 THEN
INSERT INTO re_bak VALUES(iUSER_CODE,iUSER_NAME,iRELATED_CODE);
ELSE
NULL;
END IF;
END LOOP;
FOR i IN cur_bak LOOP
dbms_outputput_line(iUSER_CODE||iUSER_NAME||iRELATED_CODE);
END LOOP;
end pro_relation_baidu;
以上就是关于sql数据库单个表中的10000条数据的查询时间全部的内容,包括:sql数据库单个表中的10000条数据的查询时间、Oracle数据库单表自关联查询疑问、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)