Re: [SQL ] 請問利用INNER JOIN串聯三張以上的資料 …

看板Database作者 (Uzhi)時間18年前 (2007/09/03 17:17), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
※ 引述《CYBASTER (雞巴班長退伍囉)》之銘言: : 各位先進大家好: : 小弟最近在練習php,便自己做了一個管帳系統, : 來管理自己在四個不同銀行帳戶中「每個月的存款狀況」, : 因此我一開始建立了四張資料表: : 郵局:postoffice : 華南:hwanan : 合庫:unionbank : 中信:chinatrust : 每張資料表的欄位都長得一模一樣,有三個欄位: : 日期:date : 存款:deposit : 備註:postscript : 其中date是作為主鍵的欄位,並且限制使用者只能輸入「月底」的日期, : (所以像2007-2-28就可以代表「96年2月」這樣。) : 然後我想要建立一個查詢,來統計自己每個月的總存款(四個帳戶的存款加總) : 這個查詢的五個欄位便分別是(日期,郵局存款,華南存款,合庫存款,中信存款) : 至於最後還有一個「存款加總」的欄位,將來再用php來處理, : 但是重要的是先將四個資料表串接起來, : 首先我先查書了解了兩個資料表的串接法像下面這樣: : SELECT postoffice.date, postoffice.deposit, hwanan.deposit : FROM postoffice INNER JOIN hwanan : ON postoffice.date = hwanan.date; : 而上面這個查詢也成功的秀出來了, : 但我卻突然發現我不知道如何再插入第三張和第四張資料表。 : 從前我是學ASP的,所以幾乎不存在這個問題,因為我會直接在access裡將查詢建立好, : 再把access裡建好的SQL語法貼進ASP的code當中,可是這招到php裡卻不管用了, : 似乎mysql並不能完全接受access裡通用的SQL語法? : (而且mysql也不能像access用精靈來建立關聯,再「盜拷」它的SQL語法) : 如果用access來寫這個查詢的話,大概像下面這樣: : SELECT postoffice.date, postoffice.deposit, unionbank.deposit, : hwanan.deposit, chinatrust.deposit : FROM (([postoffice] INNER JOIN hwanan ON postoffice.date = hwanan.date) : INNER JOIN unionbank ON postoffice.date = unionbank.date) : INNER JOIN chinatrust ON postoffice.date = chinatrust.date; : 但是寫進去後會出現supplied argument is not a valid MySQL result resource的訊息。 : 上網爬文或查書,也沒有類似的示例可供參考,不知能否請各位高手賜教?謝謝! 可以去看 O'Reilly 的 SQL 學習手冊 裡面有蠻多進階及初階的 SQL 語法應用 你想要的聯結三張以上的資料表也說明的蠻清楚的 http://www.oreilly.com.tw/product_others.php?id=a192 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.67.95.102
文章代碼(AID): #16sz54KL (Database)
討論串 (同標題文章)
文章代碼(AID): #16sz54KL (Database)