有一些存储在db中。列数据可以包含一个以下的空白区域。
$timeout
我想选择所有' 3d打印机'。
告诉我这个方法。
答案 0 :(得分:3)
你可以这样做:
Printer.objects.extra(where=["LOWER(REPLACE(name,' ','')) = '3dprinter'"])
obove查询将首先删除名称中的任何空格,然后将其设为小写,然后将其与 3dprinter
进行比较由于名称中的所有空格都被移除,包括 3d 之后的空格,我们需要将名称与 3dprinter 进行比较
答案 1 :(得分:1)
我猜django不支持字符串的SQL REPLACE
选项。但是你可以使用原始的sql。以下是关于相同的Django文档:https://docs.djangoproject.com/en/1.8/topics/db/sql/
这是用于忽略空格Query that ignore the spaces
的原始SQL查询在我看来,你应该在表slug-name
中添加另一列,它将存储名称而不包含空格。通过这种方式,您可以轻松地在桌面上使用Django ORM。