假设我想运行类似于以下内容的查询:
SELECT _id FROM my_table WHERE name = user_supplied_name
如果用户提供了一些任意长度的名称数组,我需要从my_table中获取相应的_id数字数组,该怎么办?
是正确的解决方案:
a。)提供类似于:
的WHERE子句WHERE name = name_1 OR name = name_2 OR name = name_3 ... etc
b。)为每个名称查询触发多个Loader(格式与我的第一个代码段相同)。但是,如果每个Loader都有不同的ID(如在Loader.getId()中),如何跟踪每个Loader。据推测,您必须保留一系列ID号(例如10到20)以避免冲突,但是您可以提供的名称数量有限,可以跟踪分配的名称等等。
c。)其他一些方式?
答案 0 :(得分:0)
使用多个加载器不仅难以管理,而且效率低下。
使用一个查询搜索多个名称效果很好,并且与您想要对结果做的最匹配,所以去吧。
BTW:你也可以使用IN
:
SELECT _id FROM my_table WHERE name IN ('name1', 'name2', ...)