【发布时间】:2019-07-25 20:24:00
【问题描述】:
我有 3 张桌子;
饮料
食物
饮料
Drink tbl 通过 RestID 加入到 Restaurant,Food tbl 通过 RestID 加入到 Restaurant
我正在尝试创建一个执行以下操作的查询;
- 用户输入他们想要的食物(例如汉堡)
- 用户输入他们想要的饮料(例如 Guinness)
- 查询返回提供这两种食物的餐厅
我正在尝试创建一个查询,检查输入的饮料是否在 Drinks 表中的 drinkvariety 和 drinkname 列中是 LIKE 文本,并检查输入的食物是否是 foodcategory 和 foodname 中的 LIKE 文本在食物表中。只有当查询输入的占位符是 LIKE 任一列时,餐厅才会作为结果返回。
我已尝试使用它创建此查询,但语法一定是错误的,因为它没有按预期返回;
SELECT DISTINCT r.restname
FROM restaurants r
JOIN food f ON f.restid = r.restid
JOIN drinks d ON d.restid = r.restid
WHERE f.foodcategory LIKE '%?%'
AND d.drinkvariety LIKE '%?%'
注意:以上内容目前仅检查每个表的 1 列。我知道,但它仍然不起作用。
任何帮助将不胜感激。
【问题讨论】:
-
素食区呢?
-
对不起...什么?素食区怎么样,抱歉我很困惑......
标签: mysql sql wildcard placeholder