看板 Database 關於我們 聯絡資訊
※ 引述《JYHuang (夏天到了,冷不起來了說)》之銘言: : 問題: : 如果說我要從查詢的結果來取得資料表的名稱 : 像是從A資料表取得 "Folder"一值。 : 然後再去查詢"FolderA"資料表。 : 是否能用子查詢達成? : 我用 : select * from : (select concat((select field from table where...),'A') from ...) as .. : 會變成查詢結果是查詢結果是 "FolderA" 應該是不行,只能用組合字串的方法去把資料表名稱代入 : 疑惑: : 現在在開發的資料庫裡其中有兩種資料,結構完全一樣,只有一個key不同。 : 我的想法是放在同一個資料表用key來判別。 : 不過目前另一位開發的意見是,因為資料量很大 : 為了不影響效能,所以分別獨立成兩個資料表。 : 我是想法是覺得在都在同一個database裡影響應該不大 : 只是存取的是從sql改由table去指定而以.. : 獨立放在兩台Server差別比較大.. : 是這樣嗎? 看兩個資料表之間的關係什麼,有沒有需要進行跨兩個資料表之間的查詢? 如果沒有,那分開比較好一點,只是查詢要切換資料表可能要用IF...ELSE 或是用組合字串的方式來作,會比較複雜 如果有需要跨資料表,那可能就必須用UNION,而在資料很大的情況下 我是不建議分開,乾脆合在同一個表的查詢效能反而會比較好 不過寫入速度會越來越慢就是了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.70.93.154