최신글 날짜 비교 정렬 정보
최신글 날짜 비교 정렬본문
안녕하세요?
게시판에 여분 필드에 특정 날짜를 넣어서 사용하고 있습니다.
여기 게시판을 검색하여, 그 여분 필드를 기준으로 최근글을 추출하는 것을 만들었습니다.
latest.li.php에 내용은 아래와 같습니다.
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_4 limit 0, $rows ";
메인화면에서 부르는 소스
<? echo latest("basic", "intro", 23, 100, "4,10"); ?>
그런데, 위의 wr_4 말고 특정 날짜를 넣을 여분 필드 2개가 추가 되었습니다.
즉, 날짜가 입력하는 여분 필드가 총 3개입니다.
각 게시물에 위의 여분필드에 입력되는 날짜는 모두 다른 날짜로 입력됩니다.
날짜가 입력된 3개의 필드를 비교하여 3개중에 하나라도 빠른 날짜면
위에 가게 정렬을 하고 싶습니다.
예를 들면
a의 게시물에는 3월 9일, 3월 10일 3월 15일이 입력되어 있고
b의 게시물에는 3월 20일, 3월 25일 3월 1일이 입력되어 있다면
b 게시물이 가장 위로 가게 하는 것입니다.
이렇게 하려면 어떻게 해야 될지 가르쳐 주셨으면 감사하겠습니다.
게시판에 여분 필드에 특정 날짜를 넣어서 사용하고 있습니다.
여기 게시판을 검색하여, 그 여분 필드를 기준으로 최근글을 추출하는 것을 만들었습니다.
latest.li.php에 내용은 아래와 같습니다.
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_4 limit 0, $rows ";
메인화면에서 부르는 소스
<? echo latest("basic", "intro", 23, 100, "4,10"); ?>
그런데, 위의 wr_4 말고 특정 날짜를 넣을 여분 필드 2개가 추가 되었습니다.
즉, 날짜가 입력하는 여분 필드가 총 3개입니다.
각 게시물에 위의 여분필드에 입력되는 날짜는 모두 다른 날짜로 입력됩니다.
날짜가 입력된 3개의 필드를 비교하여 3개중에 하나라도 빠른 날짜면
위에 가게 정렬을 하고 싶습니다.
예를 들면
a의 게시물에는 3월 9일, 3월 10일 3월 15일이 입력되어 있고
b의 게시물에는 3월 20일, 3월 25일 3월 1일이 입력되어 있다면
b 게시물이 가장 위로 가게 하는 것입니다.
이렇게 하려면 어떻게 해야 될지 가르쳐 주셨으면 감사하겠습니다.
댓글 전체
미리 4번째 여분필드에 3 날짜중에 오래된 날짜를 입력하면 몰라도 그냥 SQL로는 불가능하리라 봅니다.
http://dev.mysql.com/doc/refman/5.1/en/comparison-operators.html#function_least
order by least( wr_4, wr_5, wr_6)
order by least( wr_4, wr_5, wr_6)
어제 밤에 말씀하신 데로 해봤습니다.
말씀하신데로 바꾼다음에
메인화면에서 부를때 소스를 어떻게 해야 하는지 잘 모르겠습니다.
<? echo latest("basic", "intro", 23, 100, "4,10"); ?>
옵션 부분을 어떻게 바꿔야 할지 가르쳐 주셨으면 감사하겠습니다.
말씀하신데로 바꾼다음에
메인화면에서 부를때 소스를 어떻게 해야 하는지 잘 모르겠습니다.
<? echo latest("basic", "intro", 23, 100, "4,10"); ?>
옵션 부분을 어떻게 바꿔야 할지 가르쳐 주셨으면 감사하겠습니다.
latest.li.php에 내용은 아래와 같습니다.
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_4 limit 0, $rows ";
위에서 order by 부분을 수정해 보세요.
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by order by least( wr_4, wr_5, wr_6) limit 0, $rows ";
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_4 limit 0, $rows ";
위에서 order by 부분을 수정해 보세요.
$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by order by least( wr_4, wr_5, wr_6) limit 0, $rows ";
말씀하신데로 하니 잘 해결 되었습니다.
깊은 감사를 드립니다. 꾸벅~~~~~~
깊은 감사를 드립니다. 꾸벅~~~~~~
텍스와이드님과 엑스엠엘님의 소중한 답변 감사드립니다.
오늘 저녁때 적용해 보고 다시 리플 달겠습니다.
오늘 저녁때 적용해 보고 다시 리플 달겠습니다.