【发布时间】:2020-03-26 04:58:00
【问题描述】:
我想向用户返回类似任务的列表。如果任务 A 中的所有单词都存在于任务 B 中,则两个任务 A 和 B 被认为是相似的,反之亦然。 我尝试了下面给出的查询,但无法获得所需的结果。
SELECT t1.task
FROM todolistapp_todo t1
LEFT JOIN todolistapp_todo t2
ON
t1.task in (t2.task) and t1.id != t2.id;
我可以通过嵌套循环来做到这一点。但我想以最低的复杂性来做。
similar = set()
for task in tasks:
for nested_task in tasks
if (task.task in nested_task.task or nested_task.task in task.task) and task.id != nested_task.id:
similar.add(task)
【问题讨论】:
标签: sql django python-3.x postgresql