在Django中,如何创建查询集来查找双桶名称?

2024-09-25 10:23:53 发布

您现在位置:Python中文网/ 问答频道 /正文

在django,我有一桌人,每个人都有名字first和名字last。你知道吗

我要执行sql:

select * from names where left(namefirst,1)=left(namelast,1).  

现在我最大的努力就是

qs=People.objects.extra(select={'db':'select left(namefirst,1)=left(namelast,1)'})

但是如果我在上面加一个.filter(db=1),它就会产生一个错误。你知道吗

我想我可以按db订购,然后把它切断,但我知道有更好的方法。你知道吗


Tags: djangofromdbsqlnameswhere名字people
1条回答
网友
1楼 · 发布于 2024-09-25 10:23:53

您的extra参数看起来不正确。您应该使用where参数(而不是select):

People.objects.extra(where=['left(namefirst,1)=left(namelast,1)'])

相关问题 更多 >