키워드를 포함한것 우선으로 5개 쿼리문 가능 한가요?

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
키워드를 포함한것 우선으로 5개 쿼리문 가능 한가요?

QA

키워드를 포함한것 우선으로 5개 쿼리문 가능 한가요?

본문

최근5건을 쿼리하는데

특정키워드를 제시하면 그 키워드를 포함한 것 우선으로 5개 추출 가능 할까요?

 

if($keyword)

$search_keyword = " or fild = '$keyword' ";

$sql =" select * from Table where state = 1 {$search_keyword} order by deep limit 0 ,5 " ; 

 

이렇게 or 로 연결하면 키워드가 포함된것 못찾을때가 있고

and 하면 키워드 포함된것만 나오고

 

키워드 포함된 레코드가 2건밖에 없을때 나머지 3건은 state = 1 인것 3건을 포함시켜 출력 해주면 되는데...

 

한번의 쿼리문으로 가능 한가요?

 

감사 합니다

 

 

이 질문에 댓글 쓰기 :

답변 1


SELECT *
FROM Table
WHERE fild = '$keyword'
UNION ALL
(
SELECT * 
FROM Table
WHERE state = 1
)
LIMIT 0, 5;

 

복잡하게 생각도 해봤는데 

그냥 같은 테이블 유니온 걸어서 

초반에 검색어 걸리는 갯수 가져오고

state 1 인값 가져오면

검색어 부족한 부분을 state 1인값을 가져오므로

마지막에 LIMIT 걸어서 처리면 될거 같네요.

 

order by 이슈가 있다면..

 


SELECT * FROM 
(
SELECT *
FROM Table
WHERE fild = '$keyword'
UNION ALL
(
SELECT * 
FROM Table
WHERE state = 1
)
LIMIT 0, 5
)A
ORDER BY A.deep;

 

답변을 작성하시기 전에 로그인 해주세요.
전체 0
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT