当前位置: 首页 > news >正文

职业生涯规划大赛心得黄冈网站优化公司哪家好

职业生涯规划大赛心得,黄冈网站优化公司哪家好,东营招标信息网官网首页,做wps的网站赚钱文章目录1. 排序2. 分页查询3. 聚合查询3.1 分组聚合 GROUP BY练习 LeetCode 176. 第二高的薪水练习 LeetCode 177. 第N高的薪水练习 LeetCode 182. 查找重复的电子邮箱练习 LeetCode 620. 有趣的电影练习 LeetCode 183. 从不订购的客户练习 LeetCode 596. 超过5名学生的课练习… 文章目录1. 排序2. 分页查询3. 聚合查询3.1 分组聚合 GROUP BY练习 LeetCode 176. 第二高的薪水练习 LeetCode 177. 第N高的薪水练习 LeetCode 182. 查找重复的电子邮箱练习 LeetCode 620. 有趣的电影练习 LeetCode 183. 从不订购的客户练习 LeetCode 596. 超过5名学生的课练习 LeetCode 586. 订单最多的客户练习 LeetCode 1082. 销售分析 I练习 LeetCode 1050. 合作过至少三次的演员和导演练习 LeetCode 1148. 文章浏览 I练习 LeetCode 511. 游戏玩法分析 I练习 LeetCode 1485. 按日期分组销售产品练习 LeetCode 1407. 排名靠前的旅行者学习自 廖雪峰的官方网站 1. 排序 SELECT查询时是根据主键排序 根据其他条件排序可以加上ORDER BY子句默认升序 ASC可省略 SELECT id, name, gender, score FROM students ORDER BY score;降序DESC ORDER BY 列名 DESC # 降序排列SELECT id, name, gender, score FROM students ORDER BY score DESC;多条件排序 SELECT id, name, gender, score FROM students ORDER BY score DESC, gender; # 先根据分数降序然后根据性别如果有WHERE子句那么ORDER BY子句要放到WHERE子句后面 SELECT id, name, gender, score FROM students WHERE class_id 1 ORDER BY score DESC;2. 分页查询 查询时如果结果集数据量很大分页显示 可以通过LIMIT M OFFSET N子句实现。每次显示最多 M 条从第 N 条记录开始算 SELECT id, name, gender, score FROM students ORDER BY score DESC LIMIT 3 OFFSET 0; # 每页3条记录从第0条开始OFFSET超过了查询的最大数量不会报错得到一个空集 OFFSET是可选的如果只写LIMIT 15 LIMIT 15 OFFSET 0 在MySQL中LIMIT 15 OFFSET 30 LIMIT 30, 15 使用LIMIT M OFFSET N分页时随着N越来越大查询效率也会越来越低 3. 聚合查询 SQL内置的COUNT()函数查询行数 SELECT COUNT(*) FROM students; # 返回一个二维表 一行一列共有10条记录 设置别名 SELECT COUNT(*) num FROM students;函数说明SUM计算某一列的合计值该列必须为数值类型AVG计算某一列的平均值该列必须为数值类型MAX计算某一列的最大值可以对字符串排序MIN计算某一列的最小值可以对字符串排序 SELECT AVG(score) average FROM students WHERE gender M;特别注意WHERE没有匹配到任何行COUNT()会返回0而SUM()、AVG()、MAX()和MIN()会返回 NULL 3.1 分组聚合 GROUP BY SELECT class_id, COUNT(*) num FROM students GROUP BY class_id;使用多个列进行分组。例如统计各班的男女人数 SELECT class_id, gender, COUNT(*) num FROM students GROUP BY class_id, gender;每个班级的平均分 SELECT class_id, AVG(score) avgsc FROM students GROUP BY class_id ORDER BY avgsc DESC;每个班级男生和女生的平均分 SELECT class_id, gender, AVG(score) avgsc FROM students GROUP BY class_id, gender ORDER BY avgsc DESC;练习 LeetCode 176. 第二高的薪水 题目 编写一个 SQL 查询获取 Employee 表中第二高的薪水Salary 。 ------------ | Id | Salary | ------------ | 1 | 100 | | 2 | 200 | | 3 | 300 | ------------例如上述 Employee 表SQL查询应该返回 200 作为第二高的薪水。 如果不存在第二高的薪水那么查询应返回 null。 --------------------- | SecondHighestSalary | --------------------- | 200 | ---------------------来源力扣LeetCode 链接https://leetcode-cn.com/problems/second-highest-salary 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 DISTINCT去重题目要求不能并列200,200的话第二高为NULL # Write your MySQL query statement below SELECT (SELECT DISTINCT SalaryFROM Employee ORDER BY Salary DESCLIMIT 1 OFFSET 1 ) SecondHighestSalary194 ms 练习 LeetCode 177. 第N高的薪水 题目 编写一个 SQL 查询获取 Employee 表中第 n 高的薪水Salary。 ------------ | Id | Salary | ------------ | 1 | 100 | | 2 | 200 | | 3 | 300 | ------------例如上述 Employee 表n 2 时应返回第二高的薪水 200。 如果不存在第 n 高的薪水那么查询应返回 null。 ------------------------ | getNthHighestSalary(2) | ------------------------ | 200 | ------------------------来源力扣LeetCode 链接https://leetcode-cn.com/problems/nth-highest-salary 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 跟上题一样注意提前设置 N-1的值不支持 OFFSET N-1写法 CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT BEGINset n N-1;RETURN (# Write your MySQL query statement below.SELECT DISTINCT SalaryFROM Employee ORDER BY Salary DESCLIMIT 1 OFFSET n); END246 ms 练习 LeetCode 182. 查找重复的电子邮箱 题目 编写一个 SQL 查询查找 Person 表中所有重复的电子邮箱。 Create table If Not Exists Person (Id int, Email varchar(255)) Truncate table Person insert into Person (Id, Email) values (1, ab.com) insert into Person (Id, Email) values (2, cd.com) insert into Person (Id, Email) values (3, ab.com)示例 ------------- | Id | Email | ------------- | 1 | ab.com | | 2 | cd.com | | 3 | ab.com | ------------- 根据以上输入你的查询应返回以下结果--------- | Email | --------- | ab.com | --------- 说明所有电子邮箱都是小写字母。来源力扣LeetCode 链接https://leetcode-cn.com/problems/duplicate-emails 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 使用 HAVING 关键字 # Write your MySQL query statement below SELECT Email FROM Person GROUP BY Email HAVING COUNT(Email)1;265 ms 练习 LeetCode 620. 有趣的电影 题目 某城市开了一家新的电影院吸引了很多人过来看电影。 该电影院特别注意用户体验专门有个 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 | ---------------------------------------------来源力扣LeetCode 链接https://leetcode-cn.com/problems/not-boring-movies 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 # Write your MySQL query statement below SELECT * FROM cinema WHERE description ! boring AND id%2 1 ORDER BY rating DESC或者用 mod(id,2) 1 !也可以用 198 ms 练习 LeetCode 183. 从不订购的客户 题目 某网站包含两个表Customers 表和 Orders 表。 编写一个 SQL 查询找出所有从不订购任何东西的客户。 Customers 表 ----------- | Id | Name | ----------- | 1 | Joe | | 2 | Henry | | 3 | Sam | | 4 | Max | -----------Orders 表 ---------------- | Id | CustomerId | ---------------- | 1 | 3 | | 2 | 1 | ----------------例如给定上述表格你的查询应返回 ----------- | Customers | ----------- | Henry | | Max | -----------来源力扣LeetCode 链接https://leetcode-cn.com/problems/customers-who-never-order 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 NOT IN 关键字 # Write your MySQL query statement below SELECT C.Name Customers FROM Customers C WHERE C.Id NOT IN (SELECT CustomerId FROM Orders )或者 # Write your MySQL query statement below SELECT C.Name Customers FROM Customers C LEFT OUTER JOIN Orders O ON C.Id O.CustomerId WHERE O.CustomerId is null363 ms 练习 LeetCode 596. 超过5名学生的课 题目 有一个courses 表 有: student (学生) 和 class (课程)。 请列出所有超过或等于5名学生的课。 例如,表: --------------------- | student | class | --------------------- | A | Math | | B | English | | C | Math | | D | Biology | | E | Math | | F | Computer | | G | Math | | H | Math | | I | Math | --------------------- 应该输出: --------- | class | --------- | Math | --------- Note: 学生在每个课中不应被重复计算。有课程中重复出现2次A只算一次来源力扣LeetCode 链接https://leetcode-cn.com/problems/classes-more-than-5-students 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 # Write your MySQL query statement below SELECT class FROM courses GROUP BY class HAVING COUNT(DISTINCT student) 5;206 ms 练习 LeetCode 586. 订单最多的客户 在表 orders 中找到订单数最多客户对应的 customer_number 。 数据保证订单数最多的顾客恰好只有一位。 表 orders 定义如下 | Column | Type | |-------------------|-----------| | order_number (PK) | int | | customer_number | int | | order_date | date | | required_date | date | | shipped_date | date | | status | char(15) | | comment | char(200) |样例输入 | order_number | customer_number | order_date | required_date | shipped_date | status | comment | |--------------|-----------------|------------|---------------|--------------|--------|---------| | 1 | 1 | 2017-04-09 | 2017-04-13 | 2017-04-12 | Closed | | | 2 | 2 | 2017-04-15 | 2017-04-20 | 2017-04-18 | Closed | | | 3 | 3 | 2017-04-16 | 2017-04-25 | 2017-04-20 | Closed | | | 4 | 3 | 2017-04-18 | 2017-04-28 | 2017-04-25 | Closed | | 样例输出| customer_number | |-----------------| | 3 |解释 customer_number 为 ‘3’ 的顾客有两个订单比顾客 ‘1’ 或者 ‘2’ 都要多因为他们只有一个订单 所以结果是该顾客的 customer_number 也就是 3 。 进阶 如果有多位顾客订单数并列最多你能找到他们所有的 customer_number 吗 来源力扣LeetCode 链接https://leetcode-cn.com/problems/customer-placing-the-largest-number-of-orders 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 # Write your MySQL query statement below select t.customer_number customer_number from (select customer_number, count(customer_number) amount from ordersgroup by customer_numberorder by amount desclimit 1 offset 0 ) tor # Write your MySQL query statement below select customer_number from orders group by customer_number order by count(customer_number) desc limit 1练习 LeetCode 1082. 销售分析 I 产品表Product ----------------------- | Column Name | Type | ----------------------- | product_id | int | | product_name | varchar | | unit_price | int | -----------------------product_id 是这个表的主键. 销售表Sales ---------------------- | Column Name | Type | ---------------------- | seller_id | int | | product_id | int | | buyer_id | int | | sale_date | date | | quantity | int | | price | int | ------ ---------------这个表没有主键它可以有重复的行. product_id 是 Product 表的外键. 编写一个 SQL 查询查询总销售额最高的销售者如果有并列的就都展示出来。 查询结果格式如下所示 Product 表 -------------------------------------- | product_id | product_name | unit_price | -------------------------------------- | 1 | S8 | 1000 | | 2 | G4 | 800 | | 3 | iPhone | 1400 | --------------------------------------Sales 表 -------------------------------------------------------------- | seller_id | product_id | buyer_id | sale_date | quantity | price | -------------------------------------------------------------- | 1 | 1 | 1 | 2019-01-21 | 2 | 2000 | | 1 | 2 | 2 | 2019-02-17 | 1 | 800 | | 2 | 2 | 3 | 2019-06-02 | 1 | 800 | | 3 | 3 | 4 | 2019-05-13 | 2 | 2800 | --------------------------------------------------------------Result 表 ------------- | seller_id | ------------- | 1 | | 3 | ------------- Id 为 1 和 3 的销售者销售总金额都为最高的 2800。来源力扣LeetCode 链接https://leetcode-cn.com/problems/sales-analysis-i 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 # Write your MySQL query statement below select seller_id from Sales group by seller_id having sum(price) (select sum(price) as totalincome from Salesgroup by seller_idorder by totalincome desclimit 1)or all 函数所有的都要满足 # Write your MySQL query statement below select seller_id from Sales group by seller_id having sum(price) all(select sum(price) from Salesgroup by seller_id)练习 LeetCode 1050. 合作过至少三次的演员和导演 ActorDirector 表 ---------------------- | Column Name | Type | ---------------------- | actor_id | int | | director_id | int | | timestamp | int | ----------------------timestamp 是这张表的主键. 写一条SQL查询语句获取合作过至少三次的演员和导演的 id 对 (actor_id, director_id) 示例 ActorDirector 表 --------------------------------------- | actor_id | director_id | timestamp | --------------------------------------- | 1 | 1 | 0 | | 1 | 1 | 1 | | 1 | 1 | 2 | | 1 | 2 | 3 | | 1 | 2 | 4 | | 2 | 1 | 5 | | 2 | 1 | 6 | ---------------------------------------Result 表 -------------------------- | actor_id | director_id | -------------------------- | 1 | 1 | -------------------------- 唯一的 id 对是 (1, 1)他们恰好合作了 3 次。来源力扣LeetCode 链接https://leetcode-cn.com/problems/actors-and-directors-who-cooperated-at-least-three-times 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 # Write your MySQL query statement below select actor_id, director_id from ActorDirector group by actor_id, director_id having count(*) 3练习 LeetCode 1148. 文章浏览 I Views 表 ------------------------ | Column Name | Type | ------------------------ | article_id | int | | author_id | int | | viewer_id | int | | view_date | date | ------------------------此表无主键因此可能会存在重复行。 此表的每一行都表示某人在某天浏览了某位作者的某篇文章。 请注意同一人的 author_id 和 viewer_id 是相同的。 请编写一条 SQL 查询以找出所有浏览过自己文章的作者结果按照 id 升序排列。 查询结果的格式如下所示 Views 表 ---------------------------------------------- | article_id | author_id | viewer_id | view_date | ---------------------------------------------- | 1 | 3 | 5 | 2019-08-01 | | 1 | 3 | 6 | 2019-08-02 | | 2 | 7 | 7 | 2019-08-01 | | 2 | 7 | 6 | 2019-08-02 | | 4 | 7 | 1 | 2019-07-22 | | 3 | 4 | 4 | 2019-07-21 | | 3 | 4 | 4 | 2019-07-21 | ----------------------------------------------结果表 ------ | id | ------ | 4 | | 7 | ------来源力扣LeetCode 链接https://leetcode-cn.com/problems/article-views-i 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 distinct 去重 # Write your MySQL query statement below select distinct author_id as id from Views where viewer_id author_id order by id练习 LeetCode 511. 游戏玩法分析 I 活动表 Activity ----------------------- | Column Name | Type | ----------------------- | player_id | int | | device_id | int | | event_date | date | | games_played | int | -----------------------表的主键是 (player_id, event_date)。 这张表展示了一些游戏玩家在游戏平台上的行为活动。 每行数据记录了一名玩家在退出平台之前当天使用同一台设备登录平台后打开的游戏的数目可能是 0 个。 写一条 SQL 查询语句获取每位玩家 第一次登陆平台的日期。 查询结果的格式如下所示 Activity 表 ------------------------------------------------ | player_id | device_id | event_date | games_played | ------------------------------------------------ | 1 | 2 | 2016-03-01 | 5 | | 1 | 2 | 2016-05-02 | 6 | | 2 | 3 | 2017-06-25 | 1 | | 3 | 1 | 2016-03-02 | 0 | | 3 | 4 | 2018-07-03 | 5 | ------------------------------------------------Result 表 ------------------------ | player_id | first_login | ------------------------ | 1 | 2016-03-01 | | 2 | 2017-06-25 | | 3 | 2016-03-02 | ------------------------来源力扣LeetCode 链接https://leetcode-cn.com/problems/game-play-analysis-i 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 # Write your MySQL query statement below select player_id, min(event_date) first_login from Activity group by player_id练习 LeetCode 1485. 按日期分组销售产品 表 Activities ---------------------- | 列名 | 类型 | ---------------------- | sell_date | date | | product | varchar | ----------------------此表没有主键它可能包含重复项。 此表的每一行都包含产品名称和在市场上销售的日期。 编写一个 SQL 查询来查找每个日期、销售的不同产品的数量及其名称。 每个日期的销售产品名称应按词典序排列。 返回按 sell_date 排序的结果表。 查询结果格式如下例所示。 Activities 表 ------------------------- | sell_date | product | ------------------------- | 2020-05-30 | Headphone | | 2020-06-01 | Pencil | | 2020-06-02 | Mask | | 2020-05-30 | Basketball | | 2020-06-01 | Bible | | 2020-06-02 | Mask | | 2020-05-30 | T-Shirt | -------------------------Result 表 ---------------------------------------------------- | sell_date | num_sold | products | ---------------------------------------------------- | 2020-05-30 | 3 | Basketball,Headphone,T-shirt | | 2020-06-01 | 2 | Bible,Pencil | | 2020-06-02 | 1 | Mask | ---------------------------------------------------- 对于2020-05-30出售的物品是 (Headphone, Basketball, T-shirt)按词典序排列并用逗号 , 分隔。 对于2020-06-01出售的物品是 (Pencil, Bible)按词典序排列并用逗号分隔。 对于2020-06-02出售的物品是 (Mask)只需返回该物品名。来源力扣LeetCode 链接https://leetcode-cn.com/problems/group-sold-products-by-the-date 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 group_concat() group by 产生的同一个分组中的值连接起来返回一个字符串结果。语法group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator 分隔符] )distinct可以去重order by子句 排序separator是一个字符串值缺省为一个逗号 # Write your MySQL query statement below select sell_date, count(distinct product) num_sold, group_concat(distinct product order by product separator ,) products from Activities group by sell_date order by sell_date练习 LeetCode 1407. 排名靠前的旅行者 表单: Users ------------------------ | Column Name | Type | ------------------------ | id | int | | name | varchar | ------------------------ id 是该表单主键. name 是用户名字.表单: Rides ------------------------ | Column Name | Type | ------------------------ | id | int | | user_id | int | | distance | int | ------------------------ id 是该表单主键. user_id 是本次行程的用户的 id, 而该用户此次行程距离为 distance.写一段 SQL , 报告每个用户的旅行距离. 返回的结果表单, 以 travelled_distance 降序排列, 如果有两个或者更多的用户旅行了相同的距离, 那么再以 name 升序排列. 查询结果格式, 如下例所示. Users 表单: ----------------- | id | name | ----------------- | 1 | Alice | | 2 | Bob | | 3 | Alex | | 4 | Donald | | 7 | Lee | | 13 | Jonathan | | 19 | Elvis | -----------------Rides 表单: -------------------------- | id | user_id | distance | -------------------------- | 1 | 1 | 120 | | 2 | 2 | 317 | | 3 | 3 | 222 | | 4 | 7 | 100 | | 5 | 13 | 312 | | 6 | 19 | 50 | | 7 | 7 | 120 | | 8 | 19 | 400 | | 9 | 7 | 230 | --------------------------Result 表单: ------------------------------ | name | travelled_distance | ------------------------------ | Elvis | 450 | | Lee | 450 | | Bob | 317 | | Jonathan | 312 | | Alex | 222 | | Alice | 120 | | Donald | 0 | ------------------------------ Elvis 和 Lee 旅行了 450 英里, Elvis 是排名靠前的旅行者, 因为他的名字在字母表上的排序比 Lee 更小. Bob, Jonathan, Alex 和 Alice 只有一次行程, 我们只按此次行程的全部距离对他们排序. Donald 没有任何行程, 他的旅行距离为 0.来源力扣LeetCode 链接https://leetcode-cn.com/problems/top-travellers 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 解题 # Write your MySQL query statement below select name, ifnull(dis,0) travelled_distance from (select user_id id, sum(distance) disfrom Ridesgroup by user_id ) t right join Users using(id) order by travelled_distance desc, nameor # Write your MySQL query statement below select name, ifnull(sum(distance),0) travelled_distance from Users left join Rides on Users.id Rides.user_id group by Users.id order by travelled_distance desc, name
http://www.ihoyoo.com/news/19516.html

相关文章:

  • 常见网站性能优化手段山东济南城乡建设厅网站
  • 宁波住房和城乡建设局网站做网站设计师
  • 怎么做可以聊天的网站吗网站建设费可以一次性冲费用吗
  • 做网站要有什么功能ui设计培训多长时间
  • 网站建设与维护设计报告网站界面设计的主要内容
  • 公司网站建设情况报告抚州招聘网站建设
  • 学校网站设计wordpress大学主题教程
  • 建设肯德基网站的好处网站建设方案书 5个备案
  • 网站群建设进展情况汇报镇江网页
  • 做线上网站需要多少钱做化学式的网站
  • 做网站虚拟主机要多大网站建设确认书
  • 自己做短视频的网站wordpress强大用户中心
  • 如何查找做网站的服务商中煤第三建设集团投标网站
  • 室内设计师找图片的网站网站建设服务费记账分录
  • 校园网站建设培训的心得体会网站规划要点
  • 网站降权处理网站开发线上销售技巧
  • 建设网站平台电子商务网站建设与管理课后心得
  • 无锡网站建设制作开发网站开发的挑战
  • 网站制作什么做新手做网站教程
  • wordpress有插件怎么用站长工具seo综合查询外部链接数量
  • 保定做网站开发的公司有哪些网站首页分类怎么做的
  • 品牌网站建设精湛磐石网络网站建设考试多选题
  • 网站如何做背景音乐多城市地方门户网站系统
  • 购物网站开发需要什么技术建立网站 知乎
  • 服务网站欣赏做博客网站赚钱吗
  • 交易网站开发文档wordpress账户密码为空
  • 如何做外贸品牌网站建设怎么开公司
  • 成都建网站云尚网络科技有限公司介绍
  • 创一家网站家具网站建设的背景
  • 青岛网站开发哪家好自己可以建设环保公益网站吗