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 22964 게시물 읽기
No. 22964
여러테이블삭제시 하나의 쿼리로 가능한가요??
작성자
초보자
작성일
2005-01-15 14:22
조회수
4,781

안녕하세요..

초보자로서 이곳에서 정말 많은 도움을 받고있습니다..

감사합니다.

질문입니다..mysql 4.17 버전을 사용하고 있고 아래소스에서

하나의 쿼리로 합쳐서 실행이 가능할까요..?

그리고 하나로 합쳐서 하는것이 아래방법보다 더 빠른가요??

프로그램만들때 쿼리를 최대한 작게 만드는것이 좋다고 하는데 아래와 같은 소스를

유니온이나 서브쿼리를 사용해서 합치는것이 좋나요??

아래의 경우와 같이 삭제하고 입력하고 수정하는 경우가 많은데 하나로 될거 같기도 하고

책을 봐도 안나와 있고 이곳에 도움을 청합니다..

if($id){

mysql_query("delete from table1 where no = '$id' ");
mysql_query("delete from table2 where bun = '$id' ");

}

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

2개 테이블을 삭제해본적이 없어서 될까 했었는데

찾아보니 되던군요.

 

아래 버젼에서 테스트 했습니다.

+------------+
| version()  |
+------------+
| 4.0.20-log |
+------------+

 

 

create table a (
no int(10) );

 

create table b (
bun int(10) );

 

insert into a values (1);
insert into a values (2);
insert into a values (3);

insert into b values (1);
insert into b values (2);
insert into b values (3);

 

delete a, b from a, b 
 where a.no = b.bun and a.no = 3

공왕주(arin76)님이 2005-01-15 15:21에 작성한 댓글입니다.

mysql chm 도움말을 보니 multi query 가 나오더군요

김준용(house2013)님이 2005-01-16 20:56에 작성한 댓글입니다.

정말 답변 감사합니다..

근데 위 쿼리를 했을경우 a테이블에 3이 있고 b테이블에 3이 있을경우

삭제는 정상적으로 되는데

a테이블에 3이 있고 b테이블에 3이없을때 a테이블에있는 3이 삭제가

안됩니다..

이럴경우 어떻게 해야하나요??

 

초보자님이 2005-01-16 22:21에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
22967입력할때 한글이..
caroline
2005-01-16
976
22966일본어 특수문자 문제 입니다.ㅠㅠ
정대현
2005-01-16
1218
22965[질문] mysql 에서 desc 명령을 실행하면 quartz.dll 충돌...
-_-;;
2005-01-15
998
22964여러테이블삭제시 하나의 쿼리로 가능한가요?? [3]
초보자
2005-01-15
4781
22963[질문]테이블생성 [1]
모꼬
2005-01-15
1523
22962[질문]사용자가 왜 추가가 되지 않는건지 ? [2]
몰라맨
2005-01-15
1851
22961윈도우용 mysql을 리눅스용으로 돌려보려고 하는데. 가능할까요? [1]
이승현
2005-01-14
1040
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다