2009. 11. 11. 16:48
SQL을 사용하다보면 특정 문자열이 틀어간 모든 데이터를 검색하고 싶은 경우에 사용하는 like구문이 있을것이다. 그런데 오늘 문득 이 구문을 사용해 쿼리문을 작성하다가 특정 위치에 특정 문자가 존재하는 경우만을 검색하고자 하는 문제가 발생했다.
보통 %를 사용해서 특정 문자나 문자열이 들어가는 모든 내용을 가져오는것은 대부분 알고 있을 것이다.
그런데 이런 내용은!!ㅠㅠ; 역시 많은 프로젝트를 통해 많은 경험을 쌓아야만 하는것인가 하는 생각이 들면서 바로 구글링을 통해 알아본 결과 '_'라는 라는 내용이 있다.
즉 특정 위치의 내용은 무시하면서 검색을 할 수 있는 방법이다. 머 100마니 글보다 한번 보고 한번 해보는것이 좋을것이다.
1, 2번 쿼리 같은 경우는 모두 아고 있듯이 중간에 2가 들어간 모든 결과 혹은 4로 시작하는 모든 내용을 가져오라는 뜻이다. 하지만 3번 같은 경우는 첫번째 와 3번째 자리의 번호가 4와 6으로 시작하는 모든 결과를 가져오는 것이다.
위의 3번 쿼리를 했을 경우의 결과는 아래와 같다.
위 쿼리를 바탕으로 특정 column이 코드 형태로 이루어졌을 경우 해당 코드의 값에 해당하는 내용을 가져올 수 있을 것이다.
보통 %를 사용해서 특정 문자나 문자열이 들어가는 모든 내용을 가져오는것은 대부분 알고 있을 것이다.
그런데 이런 내용은!!ㅠㅠ; 역시 많은 프로젝트를 통해 많은 경험을 쌓아야만 하는것인가 하는 생각이 들면서 바로 구글링을 통해 알아본 결과 '_'라는 라는 내용이 있다.
즉 특정 위치의 내용은 무시하면서 검색을 할 수 있는 방법이다. 머 100마니 글보다 한번 보고 한번 해보는것이 좋을것이다.
FirstName | LastName | DOB | Phone | |
John | Smith | John.Smith@yahoo.com | 2/4/1968 | 626 222-2222 |
Steven | Goldfish | goldfish@fishhere.net | 4/4/1974 | 323 455-4545 |
Paula | Brown | pb@herowndomain.org | 5/24/1978 | 416 323-3232 |
James | Smith | jim@supergig.co.uk | 20/10/1980 | 416 323-8888 |
1. SELECT * FROM [table] WHERE Phone like '%2';
2. SELECT * FROM [table] WHERE Phone like '4%';
3. SELECT * FROM [table] WHERE Phone like '4_6%';
2. SELECT * FROM [table] WHERE Phone like '4%';
3. SELECT * FROM [table] WHERE Phone like '4_6%';
1, 2번 쿼리 같은 경우는 모두 아고 있듯이 중간에 2가 들어간 모든 결과 혹은 4로 시작하는 모든 내용을 가져오라는 뜻이다. 하지만 3번 같은 경우는 첫번째 와 3번째 자리의 번호가 4와 6으로 시작하는 모든 결과를 가져오는 것이다.
위의 3번 쿼리를 했을 경우의 결과는 아래와 같다.
Paula | Brown | pb@herowndomain.org | 5/24/1978 | 416 323-3232 |
James | Smith | jim@supergig.co.uk | 20/10/1980 | 416 323-8888 |
위 쿼리를 바탕으로 특정 column이 코드 형태로 이루어졌을 경우 해당 코드의 값에 해당하는 내용을 가져올 수 있을 것이다.
:: 그럼 이글을 읽는 모든 분들에게 행복이 가득하기를 ::
'ººº::Development™:: > ::Database™::' 카테고리의 다른 글
[MySql] LOAD DATA INFILE get error 13 (HY000) (0) | 2010.02.09 |
---|---|
[ODBC] Linux에서 MS-SQL 접속하기 (0) | 2008.10.30 |
[ER-Win] ERWin에서 MS-SQL 연결하기 (10) | 2008.10.08 |
MySql Error - Client does not support authentication protocol requested by Server (0) | 2007.06.26 |
MySQL Connection Error (0) | 2007.05.28 |