python - 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";
解决方案
您可以通过此链接了解如何在 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/
推荐阅读
- typescript - 打字稿动态导入打字
- java - SOAPwsdl2java 错误“org.apache.axis2.AxisFault:故障消息的部分‘故障’必须用‘element=QName’而不是‘type=QName’定义”
- django - Django Rest Framework:如何动态返回字段子集
- express - CPanel 上的 Express Rest API
- oracle - 在 Ubuntu 18.04 上安装 Oracle 数据库
- c# - 重用 IAsyncEnumerable 实例而无需再次迭代
- android - 在android中使用firebase DB实现重复电子邮件检查时,条件满足后在哪里调用方法?
- html - 允许转义字符和非转义字符的 xml 解析器
- r - 聚合 R 中特定变量名称的行
- android - 更改 searchView 提示文本颜色