Comment utiliser la fonction count() en Flacon-sqlalchemy
Je suis aider d'un projet qui utilise la fiole-sqlalchemy.Je veux un db requête pour compter le nombre d'enregistrements dans la table.Puis-je utiliser de la table.de la requête.filter_by(condition).count() directement, ou est-il quelque chose que j'ai besoin d'ajouter.S'il vous plaît aider moi.Je suis un begineer.Merci à l'avance!
OriginalL'auteur Sri Sanketh Uppalapati | 2016-01-09
Vous devez vous connecter pour publier un commentaire.
Par cette source, les éléments suivants doivent travailler pour vous:
Class_name est le nom de la mappé classe à votre table.
OriginalL'auteur Treefish Zhang
Aucune des réponses données adresse en flacon de sqlalchemy spécifiquement, lorsque vous utilisez exactement l'exemple que vous avez donné:
Vous pouvez effectuer
.count()
sans filtres:Vous pouvez également compter à l'aide de M2M relations:
Et vous pouvez les utiliser directement dans votre jinja de modèles tels que:
Points de Bonus (pour l'exécution d'esprit):
.count()
est un peu lent (surtout avec MySQL, grâce à une mauvaise manipulation de sous-requêtes), donc au lieu de cela, vous pouvez utiliser un compte qui ressemble à ceci:Pars du principe que
db
est votre SQLAlchemy instance (c'est à dire,db = SQLAlchemy(app)
). C'est une bouchée, mais il vous fera économiser un peu de frais généraux sur les grosses requêtes.OriginalL'auteur Logan Bertram
Oui, c'est elle. Mais rappelez-vous, que " count()' permet un plus requête, comme ceci:
Ce n'est pas optimiser. Vous pouvez utiliser ceci:
La requête SQL sera comme ceci:
OriginalL'auteur antonio_antuan