单表查询:

models.py:

from django.db import models

class Employee(models.Model):
name = models.CharField(max_length=16)
age = models.IntegerField()
salary = models.IntegerField()
province = models.CharField(max_length=32)
dept = models.CharField(max_length=16) def __str__(self):
return self.name class Meta:
db_table = "employee"

employee 表中数据:

orm.py:

import os

if __name__ == '__main__':
# 加载 Django 项目的配置信息
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite2.settings")
# 导入 Django,并启动 Django 项目
import django
django.setup() from app04 import models from django.db.models import Avg # 计算每个部门的平均工资
ret = models.Employee.objects.values("dept").annotate(avg=Avg("salary")).values("dept", "avg")
print(ret)

运行结果:

连表查询:

model.py:

from django.db import models

class Employee2(models.Model):
name = models.CharField(max_length=16)
age = models.IntegerField()
salary = models.IntegerField()
province = models.CharField(max_length=32)
dept = models.ForeignKey(to="Dept") def __str__(self):
return self.name class Meta:
db_table = "employee2" class Dept(models.Model):
name = models.CharField(max_length=16, unique=True) def __str__(self):
return self.name class Meta:
db_table = "dept2"

dept2 表:

employee2 表:

orm.py:

import os

if __name__ == '__main__':
# 加载 Django 项目的配置信息
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite2.settings")
# 导入 Django,并启动 Django 项目
import django
django.setup() from app04 import models from django.db.models import Avg # 连表查询计算每个部门的平均工资
ret = models.Employee2.objects.values("dept_id").annotate(avg=Avg("salary")).values("dept__name","avg") # 一个双下划线表示跨一张表查询
print(ret)

运行结果:

最新文章

  1. Spark源码学习1.7——Master.scala
  2. cookie案例-显示用户上次访问网站的时间
  3. 【ionic】微信表情设置教程
  4. struts2 + spring + mybatis 框架整合
  5. SQL Server常用元数据函数
  6. NChome如何创建单据跟主子表还有扩展开发要怎么弄?
  7. Javscript中的null和undefined
  8. AOP(转)
  9. iOS中谓词的使用
  10. 使用 Palette 让你的 UI 色彩与内容更贴合
  11. EJB_开发EJB容器模型的WEB服务
  12. weex h5开发区别-实践初级篇
  13. 【JS基础】类型转换——不同数据类型比较
  14. iOS 在 程序内调用手机上安装的地图软件进行导航
  15. QCon2019全球软件开发大会广州站即将来袭
  16. 【POI每日题解 #7】TES-Intelligence Test
  17. NSURLSession 相关清单
  18. kafka丢失和重复消费数据
  19. 记一次spring-session登录后失效的问题
  20. svn服务器快速搭建及简单配置

热门文章

  1. 前端ajax访问 django 报错 POST http://127.0.0.1:8001/xxx 403 (Forbidden)
  2. netty: 解决粘包拆包: 分隔符DelimiterBasedFrameDecoder,定长消息FixedLengthFrameDecoder
  3. [NgRx 8] Basic of NgRx8
  4. H3CNE学习6 静态路由
  5. CODE FESTIVAL 2016 qual C题解
  6. OpenStack Restful API框架介绍
  7. Mac laravel: command not found
  8. linux 查看带宽瓶颈
  9. vue-d2admin前端axio异步请求详情
  10. 2019.10.25字符串——zr