閱讀非常感謝,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
創建
基本上機型我的小APPLICA!重刑學校圖書館借閱日誌。
我想找出一種方法來創建一個sql語句,將執行以下操作:基於id_internal字段(顯示在圖片中)一次合併兩行(前兩行 - 更多兩個等,直到沒有元組存在或者最後只有一個元組),並創建一個具有更多列的新元組。
這是關於什麼的是,該集合中的一行(type = 1)描述了借書借貸,即書借出的時間和應該返還給圖書館的時間。第二行(總是Loan_Date的時間爲0000:00:00,字段類型= 0)描述了該書返回的真實日期。新行將包含在第一行中的所有信息以及作爲新列的書的真實返回日期。對於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