以下是样本:
SELECT toys.name, model.name
FROM model, toys
LEFT JOIN model
ON toys.model = model.name
WHERE model.name IN (robots,cops,trucks) toys.price = 100 or toys.price = 10
如果我在列表中找到玩具,我想要玩具。价格= 100其他玩具。价格= 10
答案 0 :(得分:0)
尝试使用此查询:
SELECT `toys`.`name`, `model`.`name`, IF (`model`.`name` IN ('robots', 'cops', 'truck'), 100, 10) AS price
FROM `toys`
LEFT JOIN `model`
ON `toys`.`model` = `model`.`name`
首先:我在查询中使用了引号和反引号
You can read the reason on this StackOverflow post
一直使用它们!
其次:如果您加入,from
中不需要有2个表。
第三,可以使用if功能解决您想要的解决方案:
如果型号名称是这三个,则价格为100,否则为10。
答案 1 :(得分:0)
您可以使用括号和 OR 来实现。并且您必须在模型名称中使用引号,因为它们是字符串。这是一个示例查询
SELECT toys.name, model.name
FROM toys
LEFT JOIN model
ON toys.model = model.name
WHERE (model.name IN ('robots','cops','trucks') AND toys.price = 100) OR toys.price = 10