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 26887 게시물 읽기
No. 26887
공백에 재약받지 않고 검색하는법
작성자
갈켜주세요
작성일
2007-07-25 16:08
조회수
2,480

mysql 에는 "ss         ss" 이렇게 중간에 공백으로 저장이 되어있는데요.



이걸 검색할려고 하는데


"ss ss" 이렇게만 쳐도 검색이 되도록 하고 싶습니다.


select* from 테이블 where 필드 = 'ss         ss'    ==> 결과값 출력됨


select * from 테이블 where 필드 = 'ss ss'  ==> 결과값 출력안됨ㅠㅠ


방법이 없나요?

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

가장 손쉽게는

SELECT *

FROM 테이블

WHERE 필드 LIKE CONCAT('ss ', '%', 'ss')

공백을 중심으로 중간중간에 %가 들어가는 LIKE 문으로 구성하면 되지 않을까요?


이 방법이 아니면 필드내의 공백을 하나만 남기고 제거한 후 비교해야 하는데,

이는 인덱스 scan을 포기하는 일이니 성능에 매우 불리할 수 있습니다.


String 중간의 공백들을 하나씩만 남기는 방법은 REPLACE함수 3번 사용하면 가능합니다...

단, 필드값 중간에 '@'문자는 없다고 가정합니다...참고하세요...;

REPLACE (REPLACE (REPLACE (필드, ' ', '@ '), ' @'), '@ ', ' ')


건승하시길...수고하세요~~

성시현(finecomp)님이 2007-07-25 17:36에 작성한 댓글입니다.
이 댓글은 2007-07-25 17:39에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
26890MySQL에서 어떻게 DB를 설계해야하는지에 대한 질문입니다. [1]
clapton
2007-07-26
2219
26889phpMyAdmin에서 한글이 꺠져보여서요 [2]
김민정
2007-07-25
1907
26888기본적인 like 검색입니다. [1]
이아람
2007-07-25
2140
26887공백에 재약받지 않고 검색하는법 [1]
갈켜주세요
2007-07-25
2480
26886안녕하세요 쿼리에서 막히는 부분이 있어서여 [2]
헬프요원
2007-07-25
2217
26884고수님들 도와주세요! MySQL 쿼리 질문이욥 '_' [1]
박지훈
2007-07-25
1817
26883mysql.sock이 운영중 갑자기 삭제됩니다.
David
2007-07-25
1693
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다