2012-03-26 42 views
1

我很難找到這個答案,所以我希望你能幫助我。mySQL SELECT在另一個表中使用外鍵

我有兩個表:

EVENT_LIST與列 'ID', '姓名', '日期' 和event_default有一列 'default_id',這是一個外鍵EVENT_LIST( 'ID')

想法是一次只能有一個事件是默認的,因此event_default只能有一個值(event_list中事件的ID)。

我需要一個SELECT語句來獲取當前默認的事件的event_list數據。但我想在一個SELECT語句中這樣做,我認爲我可以這樣做,而不是兩個。如果有幫助,我正在使用PDO框架。

成功!謝謝。我最終使用:

​​
+0

如何在event_default表中選擇默認事件?該表只包含一行嗎? – grifos 2012-03-26 00:32:35

+0

查看[這個答案](http://stackoverflow.com/a/4956023/283366)其他想法來實現你想要做的事 – Phil 2012-03-26 00:37:36

回答

4

如果我沒有得到要求的錯誤,這將做到這一點:

select el.data from event_list el 
join event_default ef on el.id = ef.default_id 

我假設表event_default只包含在其中指定默認事件一行。所以,加入event_list表後,你只會得到一行(如果idevent_list的PK)。

+0

「el.data」,「el」, 「ef」,「el.id」?他們喜歡錶名的標籤/對象嗎? – Vidarious 2012-03-26 00:35:47

+1

他們是別名。我沒有編寫'event_list.id',而是使用別名來表示這個字段,以便將該字段引用爲'el.id'(它不是1) – 2012-03-26 00:37:01

+0

@MostyMostacho僅供參考,'data'似乎不是'event_list'列('id','name'和'date') – Phil 2012-03-26 00:38:56

相關問題