제목 | 정규 표현식에 대해 궁금한점 | ||
---|---|---|---|
글쓴이 | 느림보 | 작성시각 | 2012/02/10 16:43:32 |
|
|||
안녕하세요 느림보입니다 mysql 정규 표현식에 대해서 궁금한점이 있는데요 제가 where 절에 쓰이는 regexp에 대해서 공부중인데요 '|' 이게 or를 나타내는 거라고 하는데 and를 나타내는 구문은 없나요?? and를 나타내는구문은 찾아봐도 없는거 같더라구요....ㅜㅜ 좋은 답변 기다리고 있겠습니다.. ㅜㅜ 구글링을 해도 안나와요 .. |
|||
다음글 | 정말 간단한 질문... (5) | ||
이전글 | 정해진 시간에 특정 작업을 하고싶습니다. 윈도우의 예약... (5) | ||
한대승(불의회상)
/
2012/02/10 17:18:49 /
추천
0
|
느림보
/
2012/02/10 17:35:20 /
추천
0
에 그것이 checkbox를 이용해서 value들에 구분자를 줘서 한필드에 넣어 줬습니다...
이제 검색시에 이 value들을 이용해서 체크가 돼어있던것들만 빼오려고 하는데 그것이 잘안되서요 -->view <input type="checkbox" name="a[]" value=1> <input type="checkbox" name="a[]" value=2> <input type="checkbox" name="a[]" value=3> submit -->controller if($this->input->post('a)) { $a .= implode("",$this->input->post('a')); } 하나의 필드에 넣음 1,2,3 1,2 1 1,3 요런식으루요 이 상태에서 1과2가 들어 있는 레코드를 뽑아 오려고 하는데 그것이 잘안되네요..ㅎ 1과 2두개 모두 충족상태여야 해서요;;ㅎ |
느림보
/
2012/02/10 17:40:40 /
추천
0
좀더 말씀드리자면 1,2,3한자리숫자면 뽑아 오는 방법이 쉬운데
1,12,13이런식으로 두자리숫자를 포함해버리면 12,13 안에 있는 문자도 1로 받아버려서 ...1이 없어도 다 뽑아 오더라구요...ㅜㅜ |
느림보
/
2012/02/10 17:48:57 /
추천
0
마구 찾아보니 한자리수로 인식하게 한게 ',\1,'이 방식이었습니다 결국 필드에 값을 넣을때
$pro_option = ","; $pro_option .= implode(",'+',",$this->input->post('pro_option')); $pro_option .= ","; 이렇게 글의 앞뒤에도 구분자를 주었습니다... 이렇게 하니 한자리숫자로 데이터를 뽑아오는것은 성공을 했지요 이렇게 했더니 또다른 문제가 검색시에도 이체크박스를 이용해서 검색을 하도록 해놓았는데;; 체크박스가 하나만 체크되면 값이 잘 들어오지만 2개 이상이 체크되서 넘기면 식이 뒤죽박죽되서 나오더군요... |
한대승(불의회상)
/
2012/02/11 01:57:48 /
추천
0
느림보// 각각의 값을 특정 문자로 감싸면 like 검색으로 대치 가능할 것 같은데요.
아래처럼 하면 특정 문자로 값을 감쌀수가 있습니다. $a = '{' . implode('},{', $this->input->post('a')) . '}' 이렇게 변환된 값을 DB에 입력하면 {1},{2},{3},{12},{13} 아래와 같은 방법으로 원하는 조건의 데이타를 검색 할 수 있을것 같군요. select * from table where col like '%{1}%{3}%' |
그런데 and는 왜 필요하죠?
없어도 표현이 가능 한거 같은데요...
a 로 시작하고 er로 끝나는 모든 문자열