2013-12-23 24 views
-1

我在我的數據庫中有一個表,名爲users,在此表中有一個名爲rank的字段。該字段包含用戶級別的ID。使用ID從不同的表中獲取數據

我也有一個名爲表「居」在我的數據庫,而這個表有idrank_idrank_nameid是主要的汽車增量領域,rank_id持有排ID,這就是正在被使用我的users表。

一切都很好。當我輸出他們的排名時,我需要顯示用戶rank_name,而不是rank_id。我不是在MySQL的親,我仍然在學習。

我如何獲得用戶rank,匹配它的rank_id在表ranks然後輸出rank_name從相應rank_id

請使用mysql_*.回答這個問題我知道它的生活即將結束,但這是我現在正在練習的東西,將幫助我學習如何轉換爲mysqli_*或PDO。

+0

這是一個非常基本的SQL連接查詢。我想如果你打算使用它,你需要學習更多關於SQL的知識。 –

+0

所以你必須使用連接?好,謝謝。 – PrivateMufasa

+0

'SELECT * FROM users INNER JOIN排在ON(users.rank_id = ranks.id)WHERE users.id = {userId}'....這只是一個例子,但它應該指向正確的方向。 – mic

回答

2

您將需要使用這樣的查詢

SELECT u.name, r.rank_name 
FROM users AS u 
LEFT JOIN ranks AS r ON u.rank = r.rank_id 

我建議你閱讀不同的連接。還記得你可以用這種方式加入多個表格。

+0

完美,謝謝。 – PrivateMufasa

+0

正如你所說,你應該使用PDO/MYSQLI,但是我看到很多關於mysql_的問題,所以如果你開始爲人們編輯腳本等等,你可能會發現很好的瞭解mysql_,因爲這是他們用過的,所以不一定是隻要你意識到棄用,你就從這裏開始做壞事。 –

+0

我非常清楚,你的推理恰恰就是爲什麼即時通訊開始與MySQL。 Peoples目前的腳本將使用mysql函數進行編碼,並且不會更新爲mysqli或pdo,除非他們對可能不會很長時間的腳本進行了修改。瞭解新舊慣例是我想的一個好主意。 – PrivateMufasa

相關問題