我看过一些相关内容,但无法使其正常工作。希望对某人来说这很容易!

我基本上是用逗号分隔的字符串从API接收值。我正在尝试使用WHERE子句,可以在其中使用此字符串。让我举个例子。

编辑
用户填写表格,并将数据保存到表中,其中的一列称为“过敏”。我现在正在寻找使用可能类似于"Egg,Milk,Peanuts".的列

我建立了一个查询,该查询将为用户返回配方,这需要考虑字符串中的每个值。

因此,我可以使用以下语法手动正确地完成此工作:

...
WHERE a.AllergyName = 'Egg' || a.AllergyName = 'Milk' || a.AllergyName = 'Peanut'
...


有人知道我该如何动态地做到这一点吗?

最佳答案

我从您的问题假设,您正在存储每个用户的过敏反应,并且每个用户都有一些唯一的标识符,例如userId

请尝试以下方式:

Select *
from Table1 t1
where AllergyName in (select AllergyName from Table2 t2
                      where userId = (put Id here))

09-11 20:24