如何在Django中使用LIKE语句执行mysql查询

时间:2019-03-10 14:02:24

标签: python mysql sql django

我正在尝试使用mysql语句在LIKE数据库中进行搜索:

indexstr = request.GET['index']
indexstr = '%' + indexstr + '%'
offset = int(request.GET['offset'])
for row_data in advertisement.objects.raw(
        'select * from requests_advertisement WHERE short_description LIKE '    + indexstr + ' LIMIT 10 OFFSET ' + str(offset*5)):

但是它有这个错误: Error Image

似乎它不能与%字符一起使用。当我删除%时,它可以正常工作。

1 个答案:

答案 0 :(得分:0)

这里没有理由使用原始查询。您需要__icontains查找:

advertisement.objects.filter(short_description__icontains=request.GET["index"])