我有一个格式如下的数据集:
dish | fruit
--------- +------
Orange Pie | Orange
Stew Soup | Apple
Pear Cream | Pear
Wine Drink | Grapes
Plum Dessert| Plum
我想检查所有的行,只返回水果名称是菜名的一部分的行。
我一直在尝试以下查询的不同变体,但它要么不起作用,要么无法完成任务:
SELECT *
FROM schema.table
WHERE fruit LIKE (CONCAT('%',dish,'%'))
;
我真的很感谢在这方面的帮助。提前感谢!
您希望LIKE
的操作数反过来:
SELECT *
FROM schema.table
WHERE dish LIKE CONCAT('%', fruit, '%')
请注意,不需要CONCAT()
周围的括号。
SELECT *
FROM schema.table
WHERE LOCATE(fruit, dish)
根据需要的案例依赖性,您可能需要指定COLLATION。