我在这里和其他网站上查看了很多问题,但仍然看不出为什么我的SQL语句没有返回任何内容。
基本上我有一个叫做“外卖”的数据库。分为两个表categories
和menuitems
。
我想输出每个类别名称catname
,并且与每个类别相关联的菜单项例如Cod Fillet
属于类别2' catid'。
分类表字段:
catid
catname
菜单项表字段:
itemid
itemname
itemsize
itemprice
categoryid (foreign key)
我使用了以下SQL语句但没有产生任何内容
select
menuitems.itemname,
menuitems.size,
menuitems.price,
menuitems.categoryid,
categories.catid,
categories.catname
FROM categories
RIGHT JOIN menuitems
ON categories.catid=menuitems.categoryid
我尝试过INNER JOIN和LEFT JOIN。没有任何效果。我想像这样输出:
Fish
- Cod Fillet Large: £4.90 Medium: £3.90
等等......很明显我是用Mysql和PHP做的。
请有人帮忙指出我出错的地方吗?
由于
丹
答案 0 :(得分:3)
select
menuitems.itemname,
menuitems.itemsize,
menuitems.itemprice,
menuitems.categoryid,
categories.catid,
categories.catname
FROM categories AS categories
Left JOIN menuitems AS menuitems
ON categories.catid = menuitems.categoryid;
答案 1 :(得分:0)
我已经解决了以下问题...您可以在下面的链接中查看结果...希望它能帮到您..
我已经将表创建为需求......
http://sqlfiddle.com/#!9/082891/2
select
Menuitems.itemname,
Menuitems.itemsize,
Menuitems.itemprice,
Menuitems.categoryid,
Categories.catid,
Categories.catname
FROM Categories
Left JOIN Menuitems
ON Categories.catid = Menuitems.categoryid;
从这个结果中你可以自定义你的需求......