我是新來的關係型數據庫,並且對如何查詢和連接表有一個很好的理解。我今天的問題有一部分是由兩部分組成的問題,因爲我真的不知道該怎麼說。使用外鍵時,你總是必須加入?
- 通常,將具有大量列的表拆分成多個「分組數據」表是一個好主意。從查詢點來看,當不需要某些數據時它應該節省時間,並且它還使其更具可讀性。
例如,通常我會將以下所有列組合到一個表中,然後查詢所有數據,即使只使用幾列。我目前正在試驗以下數據庫結構,這些表格都將通過uid
列進行鏈接。 :
上傳
- ID
- 名
- 標題
- 描述
- 電子郵件
- 日期
- UID
uploads_exif(一切,但UID是可選的)
- ID
- 孔徑
- 異
- shutter_speed
- 相機
- UID
uploads_social(一切,但UID是可選的)
- ID
- Facebook的
- 嘰嘰喳喳
- 的Instagram
- Flickr的
- 網址
UID
- 如果遵循上面列出的結構,爲了查詢我使用SQL JOINS所需的所有數據,或者有一種方法可以簡單地查詢所有表。例如,如果我需要上傳uploads_exif和uploads_social,則可以使用另一個函數在不使用JOIN的情況下簡單查詢所有這些數據,或者使用JOIN以正確方式執行此操作。
任何幫助將大大appriciated,謝謝!
首先,如果表格是一個整體,並且您在那裏存儲的所有數據都是一致的,那麼將表格拆分爲多個表格並不是一個好主意。只需查詢一個好的選擇命名你想查詢的列。其次,你應該閱讀關於正常形式,這將幫助你很多。第三,有很多方法可以在沒有連接的情況下進行查詢,只是發生在連接更好的性能。 – Nambu14
你是什麼意思是「是連貫的,它不是一個好主意將表格拆分成多個表格」 –
如果數據是關於同一事物,並且它強烈相關,它應該在同一張表上 – Nambu14