2개의 필드릴 합쳐서 검색하는 방법
조회 2,125 2026-08-18 등록
로그인하면 의견을 남길 수 있습니다.
아직 의견이 없습니다. 첫 의견을 남겨보세요.
게시글
여러게 필드를 조합해서 검색하는 방법
필드1,2,3의 내용을 합친후에 그내용을 검색하는 방법이다 where 1 and concat(필드1,필드2,필드3) like '%검색문구%'
2개이상 중복되는 내용을 검색하는 지리문 having
2개이상 중복되는 데이터를 뽑아와야 하는경우가 있다 예를 들어 결제 내역중에 2번이상 결제한 사람을 뽑아오는 경우가 그렇다 select *, count(*) as count1 from 테이블명 where 1 group by 회원아이디필드 having count1 > 2 이렇게 하면 2번이상인 경우를 검색할수 있다
테이블2개일때 차집합,교집합 구하는 방법
A테이블,B테이블 각각존제할때 A.idx_code -> 1,2,3,4 B.idx_code -> 2,3 일때 B.idx_code값을 빼고 A.idx_code -> 1,4만 호출하는 방법 select * from A where code not in (select idx_code from B) -> 차집합을 구할수 있다 select * from A where code in (select idx_code from B) -> 2,3처럼 교집합 내용을 구할수 있다
like 아닌것만 호출하는 법
검색할때 like를 사용한다 그러나 해당 문구가 안들어간 내용을 호출할때 사용하는 방법이다 필드면 !like '%검색문구%' -> 이런식으로 사용할것 같지 만 그렇지 않다 select * from tablename where 1 and !(필드명 like '%검색내용%') 검색내용이 없는 레코드를 호출하게 된다
substring사용법 like가 아닌 특별한 문자 위치 검색
필드중 BAE BBE 두번째 문자가 A인것만 검색 where substring(필드명,2,1)='A' 검색시에 BAE가 검색된다 이때 (필드명,2,1) 2에대한 설명 BAE B=1 A=2 E=3이다 1에대한 설명 문자를 하나만 선택하는 것이다 2번째문자부터 1개 즉 A라는 뜻이다
임으로 정렬하기 order by field ( 컬럼명, "순서1", "순서2",......
정렬하는 방법은 여러방법이 있다 그중에 유용한 정렬방법이다 select * from tablename where idx_code in (3,4,1) order by field (idx_code, 1, 4, 3); idx_code 내용을 1,4,3 순으로 정렬하고자 할때 사용하면 편하다
특정문자를 제거하고 검색하는 replace()함수
"안녕 하이루" "안녕하이루"이렇게 띄어쓰기를 제고하고 검색하는 방법이다 where 1 and replace(필드명,' ','') like '%안녕하이루%' "010-1111-2222" "1122"내용으로 검색하기위해서 "-"부분을 제거하고 검색하면된다 이때도 동일한 방법으로 검색하면된다 where 1 and replace(필드명,'-','') like '%1122%'
날짜의 차이를 검색하기 2개의 필드에서 날짜의 차이를 계산한다음 검색
wdate(등록),udate(수정) 필드가 있는경우 udate-wdate 날짜를 계산 수정한날짜 - 등록한날짜 = 3일 등록한이후 수정한 날짜의 차이가 3일인경우 검색하는 방법 where 1 and DATEDIFF(udate,wdate)=3; 검색가능하다
의견 0
로그인하면 의견을 남길 수 있습니다.
아직 의견이 없습니다. 첫 의견을 남겨보세요.