如何刷題,LeetCode_database刷題記錄(620. 有趣的電影)

 2023-10-18 阅读 29 评论 0

摘要:某城市開了一家新的電影院,吸引了很多人過來看電影。該電影院特別注意用戶體驗,專門有個 LED顯示板做電影推薦,上面公布著影評和相關電影描述。 作為該電影院的信息部主管,您需要編寫一個 SQL查詢,找出所有影片描述為非 boring (不無聊) 的

某城市開了一家新的電影院,吸引了很多人過來看電影。該電影院特別注意用戶體驗,專門有個 LED顯示板做電影推薦,上面公布著影評和相關電影描述。

作為該電影院的信息部主管,您需要編寫一個 SQL查詢,找出所有影片描述為非 boring (不無聊) 的并且 id 為奇數 的影片,結果請按等級 rating 排列。

例如,下表 cinema:

idmoviedescriptionrating
1Wargreat 3D8.9
2Sciencefiction8.5
3irishboring6.2
4Ice songFantacy8.6
5House cardInteresting9.1

如何刷題、對于上面的例子,則正確的輸出是為:

idmoviedescriptionrating
5House cardInteresting9.1
1Wargreat 3D8.9

建表sql語句:

Create table If Not Exists cinema (id int, movie varchar(255), description varchar(255), rating float(2, 1))
Truncate table cinema
insert into cinema (id, movie, description, rating) values ('1', 'War', 'great 3D', '8.9')
insert into cinema (id, movie, description, rating) values ('2', 'Science', 'fiction', '8.5')
insert into cinema (id, movie, description, rating) values ('3', 'irish', 'boring', '6.2')
insert into cinema (id, movie, description, rating) values ('4', 'Ice song', 'Fantacy', '8.6')
insert into cinema (id, movie, description, rating) values ('5', 'House card', 'Interesting', '9.1')

解題sql:

select * from cinema where description <>'boring' and mod(id,2)=1 order by rating desc

思路解析

首先根據題目分析我們要做三件事,1找出不等于boring的電影,2電影的序號id為奇數,3按照rating排序.1,3很簡單 <>boring 排除了無聊的電影,order by rating 對評分等級進行降序,分數高的排在上面解決,然后是2,可能很多小伙伴有思路但不知道具體怎么搞,或者不知道mod()函數,mod()函數其實就是一個取余函數
eg:mod(num1,num2)=0 num1 代表除數,num2代表被除數 0代表結果的余數,如果num1 除以num2 取的余數等于0 說明正好除盡,沒有余數,如果等于1則說明有余數,這個題目我們判斷奇偶其實就是判斷序號除以2是否能除盡,所以用mod(id,2)=1來篩選為奇數的序號,結束.

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/148617.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息