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 2849 게시물 읽기
No. 2849
Re: Re: SQL 쿼리에 대한 질문입니다.
작성자
정재익
작성일
2000-07-27 17:03
조회수
2,044

> > 안녕하세요. 데이타베이스는 거의 모르는 초보입니다.

> > 제가 테이블을 하나 생성했는데요. 프라이머리 키를 설정하지 않아 같은 레코드가 여러개 생성되었

> 습

> > 니다. 그래서 프라이머리 키를 뒤늦게 설정하려하니까 중복된 아이디가 있어 설정이 안되거덩요. -_-

> ?

> >

> > 혹시 이 상태에서 프라이머리 키를 설정할 방법은 없을까요?

> >

> > 아니면 중복된 레코드만을 출력하거나 중복된 아이디만 지워줄수 있는 방법이 없을까요?

> > 그러면 프라이머리 키를 설정할 수 있을테니까요. SQL문법을 제대로 사용할 줄 몰라서 어케 해야 하

> 는

> > 지 모르겠걸랑요..-_-?

> > 아시는분 제발 알려주세요~~~~~~~~ (--) (__) (--) 꾸벅~~~

>

> 안녕하세요 목동입니다 ..

> 저도 아래에 모르는 것이 있어서 망가지고 있는데.. 아직 정확한 해답을 못찾았네요..

> 흑흑...

>

> 중복된 아이디를 지워주는 방법입니다(중복된 레코드는 아마 없겠죠?)

> use 데이터베이스명;

> delete * from AAA where id='지울 ID';

> 일케 하시면 테이블 명 AAA에서 id가 '지울 ID'로 설정된 모든 레코드셋은 지워집니다.

> 한가지 주의 하실점은 Mysql은 Rollback 기능이 없어서 일단 지운다음에는 복구가

> 어렵습니다.. 심사 숙고 하세요..

 

일단 프라이머리 키로 지정될 attribute 는 유일해야 합니다. 그런데 같은 내용을 가진 row 가 있다면 이것은 primary key 로서 사용할 수 없습니다. primary key 는 유일한 것으로 바꾸어야 합니다.

만약 잘못하여 같은 내용의 row 가 여러가 들어가 있다면 나머지는 지울수 밖에 없습니다. 이런 작업은 사실 좀 복잡할 소지가 있습니다. (만약 select .... into ... 구문이 지원되는 상황이라면 간단하게 해결되겠지요. MySQL 의 경우 3.23 개발버전 부터 이러한 구문을 지원하는 것으로 알고 있습니다)

 

select distinct * from table_name into new_table_name;

drop table_name;

 

이렇게 하고 나면 new_table_name 내에는 중복되는 모든 항목들은 배제되고 하나의 자료들만 남아 있게 될 것입니다.

도움이 되셨길 바랍니다.

[Top]
No.
제목
작성자
작성일
조회
2853php파일 실행시키면 이상한메시지가.....
운수좋은날
2000-07-27
1645
2856┕>Re: php파일 실행시키면 이상한메시지가.....
천사
2000-07-27 18:11:42
1610
2861 ┕>Re: Re: php파일 실행시키면 이상한메시지가.....
정재익
2000-07-27 19:51:33
1659
2852Warning: MySQL Connection Failed --> 미치 겠다... 알려 주세요
궁금한 사람.. 답답한사람
2000-07-27
1757
2857┕>Re: Warning: MySQL Connection Failed --> 미치 겠다... 알려 주세요
천사
2000-07-27 18:14:27
2027
2859 ┕>Re: Re: Warning: MySQL Connection Failed --> 미치 겠다... 알려 주세요
묻는사람
2000-07-27 18:43:36
1957
2860  ┕>Re: Re: Re: Warning: MySQL Connection Failed --> 미치 겠다... 알려 주세요
정재익
2000-07-27 19:49:36
1822
2865   ┕>Re: Re: Re: Re: Warning: MySQL Connection Failed --> 미치 겠다... 알려 주세요
12
2000-07-27 22:36:51
1981
2848필드의 최대용량은????
김창수
2000-07-27
1763
2862┕>Re: 필드의 최대용량은????
정재익
2000-07-27 21:09:05
1886
2845SQL 쿼리에 대한 질문입니다.
최재호
2000-07-27
1642
2846┕>Re: SQL 쿼리에 대한 질문입니다.
[목동]
2000-07-27 14:58:18
1856
2849 ┕>Re: Re: SQL 쿼리에 대한 질문입니다.
정재익
2000-07-27 17:03:06
2044
2840# 아주 깨끗하고 순수한 초보의 질문임다..
송기형
2000-07-27
1845
2844┕>Re: # 아주 깨끗하고 순수한 초보의 질문임다..
정재익
2000-07-27 11:19:00
1831
2847 ┕># Re: Re: # 아주 깨끗하고 순수한 초보의 질문임다..
송기형
2000-07-27 15:50:04
1718
2850  ┕>Re: # Re: Re: # 아주 깨끗하고 순수한 초보의 질문임다..
김창수
2000-07-27 17:09:05
1745
2838~.# mysql 자동 백업에 관하여 ...
뚱땡이
2000-07-27
1499
2843┕>Re: ~.# mysql 자동 백업에 관하여 ...
정재익
2000-07-27 11:15:35
1897
2836한 리눅스박스에 mysql를 2개를 설치할수 있나요?
채창호
2000-07-27
1582
2841┕>Re: 한 리눅스박스에 mysql를 2개를 설치할수 있나요?
정재익
2000-07-27 11:05:14
1720
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다