select문 조언부탁드립니다

select문 조언부탁드립니다

QA

select문 조언부탁드립니다

본문

 

게시판에 

wr_1 영업시간

wr_2 영업마감시간을 넣었습니다

 

둘다 숫자로 들어가요

예 ] wr_1 = 1  , wr_23

 

이런식으로 들어가는데요

영업시간일때 우선순위로 뽑고싶어요

 

예를들어서 배달의 민족보면 영업시간은 위로 오고 영업시간아닌애들은 아래로 가자나요

 

그런식으로 구현하고싶은데 bbs/list파일에 select를 어떡게 해야지 영업시간이 위로 영업시간외는 아래로 게시물이 내려갈수있는지 어려워요.

 

고수님들 부탁드려요~

 

 

 

이 질문에 댓글 쓰기 :

답변 4


SELECT *, 
 CASE 
     WHEN wr_1 <= date_format(now(),'%H') AND wr_2 > date_format(now(),'%H') THEN 1 
        ELSE 2
    END AS ord
FROM 테이블명
ORDER BY ord,wr_2

쿼리문을 위 소스와 같이 처리하시면 됩니다. 

그럼 현재 영업중인 상점부터 정렬되고 영업종료시간이 가까운 순서대로 정렬 됩니다.

단순할거같은데여 select하고 wr_1와 wr_2사이 것만 찾으면 댈거같네여

wr_1 > 현재시간 and wr_2 < 현재시간

현재시간은 now()나 date("Ymd"); 변수로 넣어서 조건을 주면 대겠죠~ 

SELECT *, IF(wr_1 <= HOUR(NOW()) AND wr_2 > HOUR(NOW()), 1, 0) AS is_open FROM 테이블 ORDER BY is_open DESC, wr_1 ASC

 

이렇게 하셔도 됩니다.

wr_1에 1이 들어 있다고 말씀하셔서 wr_1, wr_2에 그냥 시간만 들어간 거라고 가정하고 쓴 겁니다. 

답변을 작성하시기 전에 로그인 해주세요.
전체 152
QA 내용 검색

회원로그인

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