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;
    

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

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

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

  • 相关阅读:
    mysql语句-DDL语句
    Web框架本质
    HTTP协议那些事儿(Web开发补充知识点)
    利用random模块生成验证码
    前端小练习
    常用模块collections
    强大的图片展示插件,JQuery图片预览展示插件
    笔记本电脑清除BIOS密码
    js中的new Option默认选中
    使用PHPMailer发送邮件
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/13368711.html
Copyright © 2011-2022 走看看