在 R 中使用 sqldf 的 WHERE 子句中的多个值

Multiple values in WHERE clause using sqldf in R

我正在尝试使用 R 中的 sqldf 查询 WHERE 子句中的多个值。我有以下查询,但是它继续抛出错误。任何帮助将不胜感激。

sqldf("SELECT amount
from df
where category = 'description' and 'original description'")

ERROR: <0 rows> (or 0-length row.names)

您需要明确定义每个 where 子句,因此

SELECT amount FROM df WHERE category = 'description' OR category = 'original description'

你可以传入多个值,这是用 IN 运算符完成的:

SELECT amount FROM df WHERE category IN ( 'description', 'original description' )

你只需要在条件下使用

sqldf("SELECT 金额 来自 df 其中类别在 ('description','original description')")

如果你想使用 like 运算符,你需要使用 OR 而不是 AND。(不确定该类别中还有哪些其他条目,如果你没有任何其他类别 "description"它的名字,以下可能就足够了

sqldf("SELECT amount from df where category LIKE 'descriptio%'")