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;
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;