zoukankan      html  css  js  c++  java
  • django的orm多表查询作业第五题答案

    5.每个作者出版的所有书的最高价格以及最高价格的那本书的名称.

    • 用django的模型类写不出来的,只能用原生sql写这题
    • 关于第五题,mysql5.7及以上版本,使用下面的答案
          set sql_mode='STRICT_TRANS__TABLES';#先将当前会话的sql_mode的only_full_group_by模式去掉
         第一种写法加limit: select * from (SELECT app01_book.xx,app01_book.price,app01_author.id from app01_author 
    	INNER join app01_book_authors on app01_author.id = app01_book_authors.author_id
        INNER JOIN app01_book on app01_book_authors.book_id = app01_book.id ORDER BY app01_book.price desc LIMIT 100) 
    		as t GROUP BY t.id;
          第二种写法加having:select * from (SELECT app01_book.xx,app01_book.price,app01_author.id from app01_author 
    	INNER join app01_book_authors on app01_author.id = app01_book_authors.author_id
        INNER JOIN app01_book on app01_book_authors.book_id = app01_book.id HAVING 1=1 ORDER BY app01_book.price desc) 
    		as t GROUP BY t.id;
    
    
    • 5.6版本使用下面的答案
          select * from (SELECT app01_book.xx,app01_book.price,app01_author.id from app01_author 
    	INNER join app01_book_authors on app01_author.id = app01_book_authors.author_id
        INNER JOIN app01_book on app01_book_authors.book_id = app01_book.id ORDER BY app01_book.price desc) 
    		as t GROUP BY t.id;
    

    -------------------------------------------

    个性签名:代码过万,键盘敲烂!!!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    Qt 6 正式发布
    GTK 4.0 正式发布
    编译 flink 1.12.0
    Flink 1.12.0 sql 任务指定 job name
    【翻译】Apache Flink 1.12.0 Release Announcement
    【源码】Flink 三层图结构 —— JobGraph 生成过程
    【源码】Flink 算子 chain 在一起的条件
    Web开发基础之CMDB系统开发之三
    Web开发基础之CMDB系统开发之二
    Ubuntu18.04升级至20.04
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/13368711.html
Copyright © 2011-2022 走看看