LeetCode刷题之有趣的电影

栏目: 数据库 · 发布时间: 5年前

内容简介:从上图可以看出来,整个题库分成三类,三种分类中,shell我不是很熟,算法的题太多,所以我先看了数据库的题。粗略地看了下,数据库的题还是相对简单的,可以跟着题目复习下SQL知识点,也可以跟着题友一起学习

LeetCode刷题之有趣的电影

LeetCode刷题之有趣的电影

从上图可以看出来,整个题库分成三类, 算法、数据库和shell ,它们题目比例为 1027/47/4

三种分类中,shell我不是很熟,算法的题太多,所以我先看了数据库的题。粗略地看了下,数据库的题还是相对简单的,可以跟着题目复习下 SQL 知识点,也可以跟着题友一起学习 新的方法不一样的分析角度

来看题

难度:简单题目链接: https://leetcode-cn.com/problems/not-boring-movies

某城市开了一家新的电影院,吸引了很多人过来看电影。该电影院特别注意用户体验,专门有个 LED显示板做电影推荐,上面公布着影评和相关电影描述。

作为该电影院的信息部主管,您需要编写一个 SQL查询,找出所有影片描述为非 boring (不无聊) 的并且 id 为奇数 的影片, 结果请按等级 rating 排列

例如,下表 cinema:

+---------+-----------+--------------+-----------+
|   id    | movie     |  description |  rating   |
+---------+-----------+--------------+-----------+
|   1     | War       |   great 3D   |   8.9     |
|   2     | Science   |   fiction    |   8.5     |
|   3     | irish     |   boring     |   6.2     |
|   4     | Ice song  |   Fantacy    |   8.6     |
|   5     | House card|   Interesting|   9.1     |
+---------+-----------+--------------+-----------+

对于上面的例子,则正确的输出是为:

+---------+-----------+--------------+-----------+
|   id    | movie     |  description |  rating   |
+---------+-----------+--------------+-----------+
|   5     | House card|   Interesting|   9.1     |
|   1     | War       |   great 3D   |   8.9     |
+---------+-----------+--------------+-----------+

这题简单吧,就是一个基础的SQL语法题,来分析:

description列非 boring (不无聊)
id为奇数

按道理来说,这种题对我来说就是纯粹的业务代码,可是你看我战绩

LeetCode刷题之有趣的电影

这都是不好好审题毛毛躁躁不检查就提交造成的,呜呜呜

LeetCode刷题之有趣的电影

大家看看我的答案

select * from cinema where description!='boring' and id%2 != 0 order by rating desc;

这道题最大的特点其实是在SQL中如何判断奇数,我这里用了最简单的判断方法,也是继承了我平时 java 编程的习惯。下面根据题友的评论和网上的资料整理几种在SQL中判断奇数的方法

  1. mod(id,2)=1,mod其实是个求余函数,和%的原理是一样的
  2. id%2=1 或者id%2!=0
  3. id&1=1,利用最后一位&1,偶数为0,奇数为1的原理
  4. id!=((id»1)«1),先左移一位将尾数位去掉,然后右移将尾数位补0,如果是偶数的话会和原来的id相等
  5. id regexp ‘[13579]$’,匹配类的如果只实现功能的话,正则肯定是没问题的
  6. POWER(-1, id) = -1,-1的奇数次方为-1,偶数次方为1

尽管是一道简单的SQL题,学到的东西还是挺多的,各位朋友,我们下期见~

LeetCode刷题之有趣的电影

欢迎来我的各个平台做客,我会尽可能地把自己知道的都分享给你们,有什么问题可以去各个平台留言,我会及时回复的,祝好!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

失控的真相

失控的真相

[美] 迈克尔·帕特里克·林奇 / 赵亚男 / 中信出版社 / 2017-6 / 42.00元

编辑推荐 在信息泛滥的时代,知识变得无处不在。鼠标轻轻一点,我们就坐拥一座巨型图书馆。然而,我们并没有因此就离真相更近。相反,互联网的普及使人们早已习惯于凡事问搜索引擎,并形成了一种“搜索即相信”的认知模式。当社交网络把数字人类带入一个个彼此隔绝的线上群体中,我们清楚地看到,真相与谎言在互联网中交织,知识与观念混为一谈,情绪宣泄掩盖了事实分析。联网的世界让我们更容易看到彼此的观点,但同时也制......一起来看看 《失控的真相》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具