왜 순서대로 출력이 안 되는 걸까요?

왜 순서대로 출력이 안 되는 걸까요?

QA

왜 순서대로 출력이 안 되는 걸까요?

본문

g5_menu 테이블

me_id me_code me_name me_link me_target me_order me_use me_mobile_use
17 10 그룹1 http://127.0.0.1/mw5/bbs/group.php?gr_id=G01 self 10 1 1
18 1010 소메뉴1 http://127.0.0.1/mw5/bbs/board.php?bo_table=S01 self 1020 1 1
19 1020 소메뉴2 http://127.0.0.1/mw5/bbs/board.php?bo_table=S02 self 1010 1 1

 

 

$sql = " select * "; 
$sql.= "  from {$g5['menu_table']} "; 
$sql.= "  order by convert(me_order, char), me_id "; 
$qry = sql_query($sql);
while ($row = sql_fetch_array($qry)) {
    print_r2($row); 
}

 

 

 

 

위 결과값이 

17 18 19 ...이렇게 순서대로 출력되지 않고,

왜  아래처럼 17 19 18 순으로 출력되는 걸까요?

 

 

Array
(
    [me_id] => 17
    [me_code] => 10
    [me_name] => 그룹1
    [me_link] => http://127.0.0.1/mw5/bbs/group.php?gr_id=G01
    [me_target] => self
    [me_order] => 10
    [me_use] => 1
    [me_mobile_use] => 1
)
Array
(
    [me_id] => 19
    [me_code] => 1020
    [me_name] => 소메뉴2
    [me_link] => http://127.0.0.1/mw5/bbs/board.php?bo_table=S02
    [me_target] => self
    [me_order] => 1010
    [me_use] => 1
    [me_mobile_use] => 1
)
Array
(
    [me_id] => 18
    [me_code] => 1010
    [me_name] => 소메뉴1
    [me_link] => http://127.0.0.1/mw5/bbs/board.php?bo_table=S01
    [me_target] => self
    [me_order] => 1020
    [me_use] => 1
    [me_mobile_use] => 1
)

이 질문에 댓글 쓰기 :

답변 2

order by me_id asc;
이렇게 하시면요?

그누보드 소스를 보지 못해서, convert() 가 뭔지 잘 모르겠네여...

order by convert(me_order, char), me_id 

이부분이 출력순서를 정하는 부분입니다.

 

1순위 : convert(me_order, char) // me_order 라는 필드가 현재 숫자형(int) 을 문자형(char) 으로 변경

 

2순위 : 만일  me_order 값이 같다면 me_id 값이 낮은게 먼저란 뜻입니다.

 

me_order 은 노출하는 순서를 지정하는 필드입니다.

 

관리자에서 해당 순서를 변경하시면 될꺼에요....

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

회원로그인

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