2017-06-05 31 views
1

我想使用一個外鍵爲了設置一個系統,我可以引用這個表來獲得一個友好的名字,而不是在api中使用id。MySQL |從另一個表中選擇數據

目前,我有它設置了這樣的...

| id | friendly_name 
| 1 | starters 
| 2 | desserts 

而且我有這樣的另一個表...

| id | type | price | desc 
| 1 | 1 | 3.99 | This is the desc 

我想使用的類型來引用該API,所以我有/api/menu/{id}/{type},但我希望它被寫爲/api/menu/1/starters

我目前正在這個代碼,但它是在數據庫

SELECT 
    m.item, 
    m.description, 
    m.price 
FROM 
    menu m, 
    types t 
WHERE 
    m.restaurant_id = :restaurant_id 
AND 
    t.id = :type 

回答

1

返回每一個項目你需要一個ON條款添加到您的加入,您需要通過type.friendly_nametype.id選擇。

SELECT 
    m.item, 
    m.description, 
    m.price 
FROM 
    menu m INNER JOIN types t ON m.type = t.id 
WHERE 
    m.restaurant_id = :restaurant_id 
    AND 
    t.friendly_name= :type 
+0

這是不行的,它只是返回的所有數據在數據庫 – tallent123

+0

哦,等一下是它沒有謝謝,這是我自己的錯 – tallent123

+0

@ tallent123你應該把它標記爲有益的,如果它爲你工作;-) – bradbury9

相關問題