在 Django 视图中执行原始 SQL 查询
在 Django 视图中,使用原始 SQL 查询可以提供对数据库的直接访问,从而实现更好的性能某些场景下的灵活性和效率。要在 Django 视图中执行原始 SQL 查询,请考虑以下步骤:
1.导入必要的模块:
from django.db import connection
2.建立光标:
cursor = connection.cursor()
3.执行原始 SQL 查询:
cursor.execute('''YOUR_SQL_QUERY_HERE''')
4.获取结果(可选):
row = cursor.fetchone()
5.打印结果(可选):
print(row)
示例:
考虑以下示例代码:
from app.models import Picture def results(request): all = Picture.objects.all() # Perform raw SQL query to count votes for "yes" cursor = connection.cursor() cursor.execute('''SELECT count(*) FROM people_person WHERE vote = "yes"''') yes_count = cursor.fetchone()[0] return render_to_response( 'results.html', {'picture': picture, 'all': all, 'yes': yes_count}, context_instance=RequestContext(request) )
在此例如,结果视图使用原始 SQL 查询来获取“yes”的票数,而不是依赖于Django ORM。
以上是如何在 Django 视图中执行原始 SQL 查询?的详细内容。更多信息请关注PHP中文网其他相关文章!