記錄我有一個表:獲得通過最低ID
table name: page_description desciption_id (pk), page_id (fk), language_id (fk), name 1, 1, 1, First page 2, 1, 2, First page_second_lang 3, 2, 1, Second page 4, 3, 2, Third page Generaly this table contains datas from pages on different languages. The first row means: First page name is 'First Page' at language 1 - whitch is english right now. I want every page from the page table, and the name at the LOWEST language_id! So something like this: 1, 1, 1, First page 3, 2, 1, Second Page 4, 3, 2, Third page
我有一個查詢它:
SELECT * FROM heading_description GROUP BY heading_id ORDER BY heading_id ASC, language_id ASC
它還給我想要的東西。但如果表格看起來像這樣:
table name: page_description desciption_id, page_id, language_id, name 1, 1, 2, First page_second_lang 2, 1, 1, First page 3, 2, 1, Second page 4, 3, 2, Third page
ORDER BY不會給我想要的東西。我試過了。
這裏: http://sqlfiddle.com/#!2/de7bd/6/0
在第一行中我希望看到LANGUAGE_ID 1
http://sqlfiddle.com/#!2/de7bd/6/0 我編輯過。 description_id是主鍵。 page_id和language_id只是一個外鍵。有一個頁面和語言表。 –
它仍然有效(http://sqlfiddle.com/#!2/de7bd/7),但您必須觀察執行計劃並可能添加更多索引。 –