我正在尝试使用外键来设置一个系统,我可以在这里引用此表来获取友好名称,而不是使用api中的id。
目前,我已经设置了这样......
| 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
答案 0 :(得分:1)
您需要为加入添加ON
条款,并且需要type.friendly_name
选择而不是type.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