我正在编写如下代码。它使用Django,但在其他情况下可能会发生这种情况。我也使用Postgres作为DB btw。
for elem in elemList:
return_obj = someModle.objects.get(something=elem)
if return_obj is not None:
return_list.append(return_obj)
return return_list
这里每次都会生成并执行一个新的数据库查询。由于循环可能很大,因此可能存在大量数据库执行。我想知道是否有更好的方法来完成这项工作。
答案 0 :(得分:1)
首先:如果ALTER TABLE `Table`
ADD UNIQUE (`start_of_week`, `end_of_week`, `weekday`);
条件与任何对象都不匹配,则不会得到something=elem
,None
会引发DoesNotExist
例外。
其次,你可以试试这个:
someModel