Re: [SQL ] 存取多個資料表

看板Database作者 (凝視)時間17年前 (2008/12/20 00:21), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/5 (看更多)
※ 引述《luxuryEX (戴汶)》之銘言: : 我是使用MYSQL +PHP : 我現在在做一個圖書館的系統 : 為了穩定性的問題 阿..那你儲存引擎選 innodb 就好了雖然 xtradb 出了 穩定性喔..爛掉就把 binary log 叫回來倒.. XD : 我在DB裡面按月份建了12個資料表 : 這12個資料表長得一模一樣 : 存資料的時候就會按建立該筆資料的月份存進對應的資料表裡面 我們公司有客戶也做過同樣的事情,不過他是一個人開一個資料庫, 開了十幾個,之後維護案要調整 scheme 真不是人幹的 還有比你更兇猛的 ^^ : 但問題來了,要如何存取多個資料表呢? : 譬如我要從12個資料表裡面搜尋類似的書 : 以下是我寫的SQL語法: : $sql = "SELECT title,author,publisher,isbn : FROM 01jan, 02feb, 03mar, 04apr, 05may, 06jun, 07jul, 08aug, : 09sep, 10oct, 11nov, 12dec 小建議,前面用數字開頭實在不是很好的 style。 : WHERE title like '%".$TITLE."% : ORDER BY `datetime` DESC"; 第一種解法 UNION, UNIOL ALL 第二種解法 你在不同的資料表選擇欄位名稱相同的欄位,要欄位前加上資料表名稱 你要開發圖書館系統,系統分析一定要先做好,關聯性資料表 FK, PK、 正規化的意義先搞清楚,要不然最後可能是做白功喔! 也有可能系統越來越做不下去喔 ^^ : 出現的錯誤訊息是: : Column 'title' in field list is ambiguous : 請問我該怎麼改語法呢? : 先謝謝各位前輩! 我這樣算在賺 P 幣嗎? -- 凝視著,卻看不見光景。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.130.223.207 ※ 編輯: roga 來自: 220.130.223.207 (12/20 00:29)

12/20 02:40, , 1F
這是很好的 P 幣來源... (y)
12/20 02:40, 1F

12/20 14:04, , 2F
XDDD
12/20 14:04, 2F
文章代碼(AID): #19IyeTfn (Database)
文章代碼(AID): #19IyeTfn (Database)