Django permet aux développeurs d'effectuer des requêtes SQL brutes directement à partir des vues. Cela peut être utile pour effectuer des opérations complexes ou récupérer des données qui ne sont pas facilement accessibles via l'ORM de Django.
Pour effectuer une requête SQL brute dans Django, vous pouvez utiliser le étapes suivantes :
L'exemple suivant montre comment exécuter la requête SQL donnée en utilisant l'ORM de Django et un SQL brut requête :
from app.models import Picture from django.db import connection def results(request): # Using Django ORM all = Picture.objects.all() yes = Picture.objects.filter(vote='yes').count() # Using raw SQL cursor = connection.cursor() cursor.execute('''SELECT COUNT(*) FROM pictures''') row = cursor.fetchone() num_all = row[0] cursor.execute('''SELECT COUNT(*) FROM pictures WHERE vote = "yes"''') row = cursor.fetchone() num_yes = row[0] return render_to_response( 'results.html', {'picture':picture, 'num_all':num_all, 'num_yes':num_yes}, context_instance=RequestContext(request) )
Pour filtrer les résultats à l'aide de la clause WHERE, incluez simplement la clause WHERE dans la requête SQL. Par exemple, pour filtrer le vote pour « oui » :
cursor.execute('''SELECT COUNT(*) FROM pictures WHERE vote = "yes"''')
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!