内容简介:从上图可以看出来,整个题库分成三类,三种分类中,shell我不是很熟,算法的题太多,所以我先看了数据库的题。粗略地看了下,数据库的题还是相对简单的,可以跟着题目复习下SQL知识点,也可以跟着题友一起学习
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为奇数
按道理来说,这种题对我来说就是纯粹的业务代码,可是你看我战绩
这都是不好好审题毛毛躁躁不检查就提交造成的,呜呜呜
大家看看我的答案
select * from cinema where description!='boring' and id%2 != 0 order by rating desc;
这道题最大的特点其实是在SQL中如何判断奇数,我这里用了最简单的判断方法,也是继承了我平时 java 编程的习惯。下面根据题友的评论和网上的资料整理几种在SQL中判断奇数的方法
- mod(id,2)=1,mod其实是个求余函数,和%的原理是一样的
- id%2=1 或者id%2!=0
- id&1=1,利用最后一位&1,偶数为0,奇数为1的原理
- id!=((id»1)«1),先左移一位将尾数位去掉,然后右移将尾数位补0,如果是偶数的话会和原来的id相等
- id regexp ‘[13579]$’,匹配类的如果只实现功能的话,正则肯定是没问题的
- POWER(-1, id) = -1,-1的奇数次方为-1,偶数次方为1
尽管是一道简单的SQL题,学到的东西还是挺多的,各位朋友,我们下期见~
欢迎来我的各个平台做客,我会尽可能地把自己知道的都分享给你们,有什么问题可以去各个平台留言,我会及时回复的,祝好!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
黑客大曝光
Joel Scambray、Vincent Liu、Caleb Sima / 姚军 / 机械工业出版社华章公司 / 2011-10 / 65.00元
在网络技术和电子商务飞速发展的今天,Web应用安全面临着前所未有的挑战。所有安全技术人员有必要掌握当今黑客们的武器和思维过程,保护Web应用免遭恶意攻击。本书由美国公认的安全专家和精神领袖打造,对上一版做了完全的更新,覆盖新的网络渗透方法和对策,介绍如何增强验证和授权、弥补Firefox和IE中的漏洞、加强对注入攻击的防御以及加固Web 2.0安全,还介绍了如何将安全技术整合在Web开发以及更广泛......一起来看看 《黑客大曝光》 这本书的介绍吧!