我有一個系統,我有動態的用戶信息。基本上,我有一個用戶名,用戶名,電子郵件和密碼(所需的基礎知識)。如果系統管理員想要添加一個用戶字段,他們可以通過在user_fields表中添加一個新條目來實現,那麼該字段的數據將存儲在user_fields_data中。MySQL聯盟/加入行與列
用戶:
id | name | email | password
=============================================
1 | bob smith | [email protected] | asdfasdfasdf
...
user_fields:
id | field
==========
1 | address_1
2 | address_2
...
user_fields_data:
user_id | field_id | value
===============================
1 | 1 | 123 abc st
1 | 2 | suite 314
基本上我的目標是要執行一個查詢在那裏我可以得到所有的信息。
array(
'name' => 'bob',
'email' => '[email protected]',
'password' => 'asdfasdfasdf',
'address_1' => '123 abc st',
'address_2' => 'suite 314'
)
我整天都在一起連接表,但是我從來沒有必要以這種方式連接(行/列)。
在此先感謝!
目前?沒有^^。我知道如何使用兩個獨立的SQL語句來執行此操作,但是甚至不知道如何從這種類型的連接開始。 –
這是一個普通的舊連接...只需寫入sql。問題是你會得到很多行 - 這將需要在表示層展開。爲這種可憐的模式設計噓聲。 – Randy
@Randy正確,我不打算在每一行中獲取用戶中的所有數據。你將如何去改變架構? –