많은 감사를 병합 MySQL의 연속 키 값을 기준으로 행을 결합하고 읽기
나는이 다음 표 (뷰) 생성#id_internal type BOOK_ID Writer Title Loan_person_id Loan_Date Return_Date
120 1 1002 Writer1 Book1 2 2012-05-21 2012-06-04
131 0 1002 Writer1 Book1 2 0000-00-00 2012-05-21
134 0 1002 Writer1 Book1 2 0000-00-00 2012-05-21
153 1 1002 Writer1 Book1 2 2012-05-21 2012-06-04
162 0 1002 Writer1 Book1 2 0000-00-00 2012-05-21
165 1 1002 Writer1 Book1 2 2012-05-21 2012-06-04
252 1 1012 Writer2 Book2 2 2012-05-23 2012-06-06
253 0 1012 Writer2 Book2 2 0000-00-00 2012-05-23
383 1 1012 Writer2 Book2 2 2012-05-23 2012-06-06
389 0 1012 Writer2 Book2 2 0000-00-00 2012-05-24
13 1 1008 Writer3 Book3 3 2012-05-20 2012-06-03
하는 기본적으로 모델 내 작은 덮은! 기 학교에 대한 도서관 대출 로그.
다음을 수행하는 SQL 문을 작성하는 방법을 찾으려고합니다. 그림에 표시된 id_internal 필드를 기반으로 한 번에 두 행 결합 (첫 번째 두 행 - 두 번 이상 튜플이 존재하거나 끝에 하나만 존재 함) 하나의 열이 더있는 새로운 것을 생성하십시오.
집합의 한 행 (유형 = 1)은 책 대출을 설명합니다. 즉 대출 한 시간과 도서관으로 되돌려 보낼 시간을 말합니다. 두 번째 행 (항상 0000 : 00 : 00 및 필드 유형 = 0 Loan_Date를 가짐)은 책이 반환 된 실제 날짜를 설명합니다. 새 행에는 첫 번째 행에 포함 된 모든 정보와 새 열은 책의 실제 반환 날짜가됩니다. Book_ID 및 Loan_person_id (책을 빌린 독자의 경우) 및 TYPE (값 0 (반환) 및 1 (대출))에 대한 열이 있습니다.
SQL에서 내 기본 능력에서 초기 중간 역량에 이르기까지 GROUP BY 및 GROUP CONCAT을 올바르게 사용하지 못했습니다. 답변 또는 길 찾기를 기다리고 있습니다.
많은 감사 다시 디노
편집 : 결과는
Before Processing: #id_internal type BOOK_ID Writer Title Loan_person_id Loan_Date Return_Date 120 1 1002 Writer1 Book1 2 2012-05-21 2012-06-04 131 0 1002 Writer1 Book1 2 0000-00-00 2012-05-21 After processing : Keep one of two id_internal (does not matter): #id_internal type BOOK_ID Writer Title Loan_person_id Loan_Date Return_Date Real_Return_Date 120 1 1002 Writer1 Book1 2 2012-05-21 2012-06-04 2012-05-21
많은 감사
문제가있는 SQL을 게시하는 것이 좋습니다. 이 모든 텍스트보다 당신이 잘못하고있는 것을 정확하게 찾아내는 데 도움이 될 것입니다. – duffymo
죄송합니다. 생각했던 것처럼 이미지를 게시 할 수 없었습니다. 대신 텍스트를 사용했습니다. 독서에 대한 많은 감사. –
표가 아닙니다. 당신이 시도한 SQL. – duffymo