qq_39511609
萧潇墨
2019-06-19 14:09
采纳率: 60.6%
浏览 1.0k

python django如何对多个表的多条数据进行分页

假设我现在mysql上有两个表,A表和B表,
A表中有两个字段一个msgid和一个userid,
B表中有三个字段一个id字段和一个msg字段还有一个msgid字段,
A表中的userid字段可能存在多条相同的userid值,
B表中的msgid也有可能存在多条相同的msgid,
现在要根据A表中的userid查询B表中的msg值,
目前我想的查询逻辑大概是这样的:
先拿到一个userid去A表查询 ,然后遍历查询到的所有值data,
然后在用data相关联的msgid查询所有B表的msg值,
但是想分页就不知道怎么分了 !请大神给解答下!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • zhenmu
    zhenmu 2019-06-27 16:45
    已采纳

    2个model 要做一下关联就行
    可以查一下
    models.ManyToManyField
    或者
    models.ForeignKey
    的使用

    参考
    https://www.cnblogs.com/Finley/p/5537753.html
    https://cloud.tencent.com/info/355ec7edf2caf10f0d2c455c32d5bb83.html

    如果不用 model 则,可以 用

    from django.db import connection
    SQL_str = "select * from xxxx(两个表联合查询,加上条件 加上 limit 分页"
    cursor = connection.cursor()
    cursor.execute(SQL_str)
    domain_and_record_db_datas = cursor.fetchall()

    参考:
    https://blog.csdn.net/wenph2008/article/details/41721511

    点赞 评论
  • liujianchen_linux
    Next66 2019-06-19 15:18

    SELECT A.userid,B.msg FROM A INNER JOIN B ON A.msgid=B.msgId WHERE A.userid=10000 LIMIT 10

    点赞 评论
  • mx472756841
    战渣渣 2019-06-21 09:18

    你想用django,你得把你的模型贴出来看一下呢、

    点赞 评论

相关推荐