database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 29511 게시물 읽기
No. 29511
서브쿼리 속도
작성자
궁금이
작성일
2010-01-19 19:07
조회수
6,937

mysql 5.x버전인데 아래처럼 테이블이 있다면
--------------------------------------
Table A
      name
      age
--------------------------------------
Table B
    name 
--------------------------------------

B에 있는 name 데이타 전체를 A테이블에서 제거하고자 아래의 쿼리로 작성했습니다. ( B 테이블의 name은.. 중복가능 )

delete from A where name IN ( select name from B group by name )

근데 너무 느려요.

A, B 테이블에 name에 대해 index생성 후 위 쿼리 날려도 16분정도 걸리고..ㅠ.ㅠ


select name  from B group by name ---> 따로해서 배열로 만들어서 넣을려니..
mysql 쿼리 길이 제한이 있다는 소릴 들어서요..
IN 안에 인자값이 너무 길것 같아서..

이런 경우는 어찌 해야할까요?
 

이 글에 대한 댓글이 총 1건 있습니다.

 DELETE FROM A USING A JOIN B ON A.name=B.name

위와 같이 하면 향상될 것 같습니다.

박현우(lqez)님이 2010-01-19 23:23에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
29516mysql 부하문제 [2]
byeong
2010-01-22
9286
29515MySQL에서 C API 사용 ^^ [1]
맥초보
2010-01-21
6303
29513like 와 INSTR 어떻게 속도 면에서 좋아요? [1]
홍길동
2010-01-21
9391
29511서브쿼리 속도 [1]
궁금이
2010-01-19
6937
29510쿼리문과 서버튜닝 질문입니다. [1]
고재철
2010-01-16
6938
29509MYSQL이 중단된 경우... [2]
송기창
2010-01-15
5899
29508치환 쿼리문 꼭좀 알려주시면 감사드리겠습니다. [3]
누에고치
2010-01-15
6211
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다