Coldfusion CFWheels查询在中使用

Coldfusion CFWheels查询在中使用,coldfusion,cfwheels,Coldfusion,Cfwheels,我有一个简单的值数组(缩写),我需要对它们进行循环,并在另一个db表中检查外键。在MySQL中,我会使用In子句,但对于CFWheels和MS SQL,我不知道该怎么做 我首先查询users表,并获得该用户所属的组的列表。此信息(不是我的所作所为)以逗号分隔的列表形式存储在users.groups列中。然后我需要遍历该列表,并从groups.title列中获取每个组的标题。我认为它应该类似于下面的代码,但它会出错,有什么想法吗 另外,如何使用“include”即CFWheels中的连接作为一个查

我有一个简单的值数组(缩写),我需要对它们进行循环,并在另一个db表中检查外键。在MySQL中,我会使用In子句,但对于CFWheels和MS SQL,我不知道该怎么做

我首先查询users表,并获得该用户所属的组的列表。此信息(不是我的所作所为)以逗号分隔的列表形式存储在users.groups列中。然后我需要遍历该列表,并从groups.title列中获取每个组的标题。我认为它应该类似于下面的代码,但它会出错,有什么想法吗

另外,如何使用“include”即CFWheels中的连接作为一个查询来完成

user = model("user").findAll(
    select="groups",
    where="userid = '#params.userid#'"
);

// remove trailing comma from list
groups = left(user.groups,len(user.groups)-1);

groups = listToArray(groups);

group_titles = model("groups").findAll(
    select="title",
    where="abbr IN (#groups#)"
);

您需要将列表中的每个值用单引号括起来,而不是将列表转换为数组

user = model("user").findAll(
  select="groups",
  where="userid='#params.userid#'"
);

group_titles = model("groups").findAll(
  select="title",
  where="abbr IN (#ListQualify(groups, "'")#)"
);
在CFORM查询中,如果要传入数字或布尔值,则需要将字符串用单引号括起来,或者不使用引号。

我尝试过使用ValueList(),但这不适用于我的数组。