首页 > 解决方案 > sql 查询到 python django 查询

问题描述

我是 Django 和 SQL 的新手。我有以下 SQL 查询。如何在 Django 查询中实现相同的功能?

"SELECT DISTINCT C1.CLASSDESC AS CLASS,C2.CLASSCODE AS CODE, C1.CARDCATEGORY AS CATEGORY, C2.CLASSBENEFITS BENEFITS FROM CARDCLASSMAPPING C1,CARDCLASSMASTER C2 WHERE C1.ISACTIVE = 1 AND C2.ISACTIVE = 1 AND C1.CLASSDESC = C2.CLASSDESC AND C1.SCHEMETYPE = ? AND C1.SCHEMECODE = ? AND C1.GLCODE = ? AND C1.ACCOUNTCATEGORY = ? ORDER BY CLASS";

标签: pythonsqldjango

解决方案


您可以通过此链接了解如何在 Django 中构建查询。Django 提供 ORM API 以使用如下查询轻松地从数据库中获取数据:

CardClassMapping.objects.get(id=1)

为了使用上面的代码行,您应该有一个命名CardClassMapping为从中获取对象的模型。

此外,您可以像这样使用原始 SQL:

CardClassMapping.objects.raw('SELECT DISTINCT C1.CLASSDESC AS CLASS,C2.CLASSCODE AS CODE, C1.CARDCATEGORY AS CATEGORY, C2.CLASSBENEFITS BENEFITS FROM CARDCLASSMAPPING C1')

有关原始 SQL 的更多信息:https ://docs.djangoproject.com/en/3.1/topics/db/sql/


推荐阅读