두개의 테이블 정렬 질문입니다.

두개의 테이블 정렬 질문입니다.

QA

두개의 테이블 정렬 질문입니다.

본문

students 라는 테이블과 records 라는 테이블 두개가 있습니다.

 

students는 학생정보만 records는 학생 성적이 들어가있습니다.

 

sutdents는 id,record_id,name 이렇게 3개의 칼럼이

records는 id,student_id,score 이렇게 3개의 칼럼이 있습니다.


$student_sql = "select * from students";
$student_result = sql_query($student_sql);
 
foreach($student_result as $row){
     $record_sql = "select * from records where student_id ='{$row['student_id']}'";
     $record_result = sql_fetch($records_sql);
     echo $record_result['score'];
 
     //결과값 : 85
}

 

이렇게 전체 학생 테이블을 돌리고 레코드 테이블에서 해당학생 아이디를 찾아서 점수를 뿌려주는데요.

원하는대로 점수는 아주 잘나옵니다.

 

그런데 이거를 점수가 높은 순으로 정렬을 하고 싶은데 students 테이블을 돌리고 그 안에서 records 테이블에서 값을 찾아서 반영 해 주는거라 records 테이블의 score로는 정렬이 안됩니다..

 

어떻게 해야 records 의 score로 정렬을 할 수 있을까요?

또 이런 방식이 맞는지도 궁금합니다..

이 질문에 댓글 쓰기 :

답변 1


$sql = "select s.name,r.* from stdunets as s join records as r on s.id=r.student_id order by score desc";

쿼리를 이렇게 바꾸셔서 실행하시면 될듯 합니다.

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

회원로그인

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