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
운영게시판
최근게시물
MS-SQL Q&A 1891 게시물 읽기
No. 1891
쿼리 질문 입니다.
작성자
임재영(corcoon)
작성일
2005-04-20 04:25ⓒ
2005-04-20 06:45ⓜ
조회수
2,339

현재 테이블에 많은 컬럼중 Ename,name 이란 컬럼이 존재하며

두개의 컬럼에는 각각

| Ename | name |

|hi(안녕하세요) |hi(안녕하세요) |

.

.

.

.

이런 형식으로

1만개의 레코드가 존재 합니다.

여기서 Ename의 데이터에서 괄호와 괄호안에 있는 한글을 삭제 하려 합니다.

물론 괄호가 없이 영문 이름만 있는 데이터와 섞여 있습니다.

따라서 괄호가 있으면, 괄호와 괄호안의 한글을 삭제 하는 쿼리를 만들려 고민하고

있는데요... 가능할까요?

좋은 팁있음 주시기 바랍니다.

'(' 를 찾아서 그 괄호 뒤로는 모두 삭제 하면 될거 같은데..

쿼리로 짜려니 쉽지가 않네용 ..

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

정확한 테이블 구조나 데이타 확인은 되지 않아 그냥

case문으로 Selecting하는 것을 해봤습니다.

정확한 작업을 하시려면

이 과정으로 만든 데이터를 temp table로 만들어 데이터를 확인하고

update하는 과정을 하시면 간단히 해결될 듯합니다.

ename, name의 칼럼에 각각 영문자가 서로 다른 것과

데이터가 없는 것 그리고 '('가 없는 것등의 case를 넣었습니다.

참고하셔서 작업하십시요. 화이팅하세요 !!

 

/*
create table testTB
( ename varchar(50)
,name varchar(50))

drop table testTB

select * from testTB
insert into testTB values ('hi(안녕하세요)', 'hi')
insert into testTB values ('youly(여리)', '')
*/

select case when charindex('(', ename ) > 0 then  left(ename, charindex('(', ename ) -1)
   else ename end as ename,
  case when charindex('(', name ) > 0 then  left(name, charindex('(', name ) -1)
   else name end as name
from testTB

 

 

Result

ename                          name
----------------- -----------------
hi                                    hi
youly                                             

(2 row(s) affected)

 

여리님이 2005-04-20 10:11에 작성한 댓글입니다.
이 댓글은 2005-04-20 10:13에 마지막으로 수정되었습니다. Edit

참고해서 테스트 해보겠습니다.

감사합니다.. ^^v

글쓴이님이 2005-04-20 11:07에 작성한 댓글입니다. Edit

멋지게 해결했습니다.

감사합니다.

 

update TB

set bizename=
 case when charindex('(', bizename ) > 0 then  left(bizename, charindex('(',bizename ) -1)
 else bizename end
from TB

'where idx<10 <== 테스트 용

(__)v

글쓴이님이 2005-04-20 12:31에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1894SQL2000 퍼스널버전 설치시 단일모드 접속밖에 안되나요?
넘궁금이
2005-04-20
1694
1893SQL7.0/Win NT4.0 서버에 SQL2000 클라이언트 설치가능?? [1]
넘궁금이
2005-04-20
1730
1892설정값 초기화
이미영
2005-04-20
1657
1891쿼리 질문 입니다. [3]
임재영
2005-04-20
2339
18908102에러... [1]
고영훈
2005-04-19
1911
1889select [PID] from Player와 select PID from Player 의 차이가 뭐죠? [1]
고영훈
2005-04-19
1413
1887SQL 서버 연결이 안됩니다. [4]
이진휘
2005-04-18
6206
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다