企业购网站建设,网站备案 公章,遵义做网站哪个公司最好,小程序建站平台题目
某城市开了一家新的电影院#xff0c;吸引了很多人过来看电影。该电影院特别注意用户体验#xff0c;专门有个 LED显示板做电影推荐#xff0c;上面公布着影评和相关电影描述。
作为该电影院的信息部主管#xff0c;您需要编写一个 SQL查询#xff0c;找出所有影片…题目
某城市开了一家新的电影院吸引了很多人过来看电影。该电影院特别注意用户体验专门有个 LED显示板做电影推荐上面公布着影评和相关电影描述。
作为该电影院的信息部主管您需要编写一个 SQL查询找出所有影片描述为非 boring (不无聊) 的并且 id 为奇数 的影片结果请按等级 rating 排列。 例如下表 cinema: 对于上面的例子则正确的输出是为 解题思路
前置知识 位运算 由于位运算直接对内存数据进行操作不需要转成十进制因此处理速度非常快。 按位与Bitwise AND运算符号为 ab 的操作的结果a、b中对应位同时为1则对应结果位也为1、 例如 对10101100000000进行右移8位得到的是101011这就得到了a的8~15位的掩码了。那么根据这个启示判断一个整数是否是处于 0-65535 之间常用的越界判断 用一般的 (a 0) (a 65535) 可能要两次判断。 改用位运算只要一次 a ~((1 16)-1) 后面的常数是编译时就算好了的。其实只要算一次逻辑与就行了。 常用技巧 1、 用于整数的奇偶性判断 一个整数a, a 1 这个表达式可以用来判断a的奇偶性。二进制的末位为0表示偶数最末位为1表示奇数。使用a%2来判断奇偶性和a 1是一样的作用但是a 1要快好多。 知道了位运算后我们一起来看这道题 1.题目要求求出 所有影片描述为非 boring (不无聊) 的并且 id 为奇数 的影片首先我们用位运算筛选出 id 为单数的影片利用 id 1当 id 为单数时返回1id 为偶数时返回 0。 2.筛选出 id 为单数的影片后我们再对其进行筛选找到 description 不等于 boring 的影片最后按照 rating 进行降序排序返回影片的全部信息即可。 代码实现
select *
from cinema
where id 1
and description ! boring
order by rating desc
测试结果