我有一个像这样的表:

id     name            children
1      Roberto         Michael,Dia
2      Maria           John,Alex
3      Mary            Alexandre,Diana


我的问题是;
我想找到谁有一个叫亚历克斯的孩子。

我无法在SQL中使用"where children = 'Alex'",因为在同一单元格中有多个名称。

所以我用"where children LIKE '%Alex%'"-看起来很聪明,但是
在同一时间,我像亚历克斯一样开始一切:(亚历山大
或我想获取dia,但结果是dia和diana :(

如何获得该数据类型的单个Alex?

我希望我能用我的英文不好来解释我的问题:D

最佳答案

最好的解决方案是规范您的架构。您应该有一个单独的表,每个子表都有一行,而不是用逗号分隔的列表。然后,您可以与此表一起找到具有特定孩子的父母。有关此示例,请参见@themite的答案。

但是,如果由于某种原因而无法执行此操作,则可以使用FIND_IN_SET

WHERE FIND_IN_SET('Alex', children)

关于php - 查询列中的多个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50048523/

10-13 06:51