테스트 사이트 - 개발 중인 베타 버전입니다

여러필드를 한번에 정렬할수 있을까요?

돌얼음 5년 전 조회 3,444

공부시작한지 1주일된 초짜입니다. 여러필드를 정렬하고싶은데 안되서 도움 요청드립니다.

 

$wr_7 = explode("|", $row[wr_7]);     $a0=$wr_7[0]; //몸무게     $a1=$wr_7[1]; //키     $a2=$wr_7[2]; //혈액형

$wr_8 = explode("|", $row[wr_8]);     $a01=$wr_8[0]; //몸무게     $a11=$wr_8[1]; //키     $a21=$wr_8[2];

$wr_9 = explode("|", $row[wr_9]);     $a02=$wr_9[0]; //몸무게     $a12=$wr_9[1]; //키     $a22=$wr_9[2]; //혈액형

$wr_10 = explode("|", $row[wr_10]);     $a03=$wr_10[0]; //몸무게     $a13=$wr_10[1]; //키     $a23=$wr_10[2]; //혈액형

 

카테고리= 학생

 

DB내용

-------------------------------------------------------    wr_6     wr_7       wr_8       wr_9      wr_10 --------------------------------------------------------        1반   63|155|A   62|158|O   44|150|A   64|170|B --------------------------------------------------------       2반   70|160|O   78|173|A   56|168|A   60|165|A --------------------------------------------------------         3반   54|158|B   74|174|B   46|168|B   59|160|A ------------------------------------------------------- 일때 몸무게로 정렬하려고 하면

$sql = "select * from $write_table where ca_name = '학생' order by ......";         $result = sql_query($sql);         for ($i=0; $row=sql_fetch_array($result); $i++) 

 

order by 에 뭘 써도  결과는

몸무게  키  혈액형  반구분  44    150    A       1반  62    158    O       1반  63    155    A       1반  64    170    B       1반  56    168    A       2반  60    165    A       2반  70    160    O       2반  78    173    A       2반  46    168    B       3반  54    158    B       3반  59    160    A       3반  74    174    B       3반

이렇게 반별로 몸무게 정렬만되고  전체적으로는 안됩니다.

 

하고자하는 정렬은 몸무게별

몸무게  키  혈액형  반구분  44    150    A      1반  46    168    B      2반  54    158    B      1반  56    168    A      2반  59    160    O      3반  60    165    A      2반  62    158    O      1반  63    155    A      1반  64    170    B      1반  70    160    O      2반  74    174    B      3반  78    173    A      2반

입니다.

가능할까요? 가르쳐주시면 감사하겠습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

5년 전

잘라서 쓰면 되는데 DB 성능상 추천드리지는 않습니다.

 

order by SUBSTR(wr_7, 3) desc, SUBSTR(wr_8, 3) desc ...

 

DB설계를 다시 하심이 어떨가요..

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

돌얼음
5년 전
그수밖에 없는건가요 ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인