力扣1148. 文章浏览 I

Views 表:

复制代码
+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| article_id    | int     |
| author_id     | int     |
| viewer_id     | int     |
| view_date     | date    |
+---------------+---------+
此表可能会存在重复行。(换句话说,在 SQL 中这个表没有主键)
此表的每一行都表示某人在某天浏览了某位作者的某篇文章。
请注意,同一人的 author_id 和 viewer_id 是相同的。

请查询出所有浏览过自己文章的作者

结果按照 id 升序排列。

查询结果的格式如下所示:

示例 1:

复制代码
输入:
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    |
+------+

根据题意可以知道当author_id 和 viewer_id相同时为作者浏览自己的文章,然后需要去掉重复的使用distinct,最后使用order by 进行升序排序

desc 代表降序,asc 代表升序;如果不写,默认是升序

javascript 复制代码
select distinct author_id id from Views where author_id =viewer_id 
order by id asc
相关推荐
一只旭宝17 分钟前
Linux专题十二:mysql数据库以及redis数据库
linux·数据库·mysql
萧曵 丶24 分钟前
MySQL B+树详解
数据库·b树·mysql
先做个垃圾出来………30 分钟前
53. 最大子数组和
算法·leetcode
POLITE339 分钟前
Leetcode 160.相交链表 JavaScript (Day 9)
javascript·leetcode·链表
鱼跃鹰飞41 分钟前
面试题:Spring事务失效的八大场景
数据库·mysql·spring
ss2731 小时前
类的线程安全:多线程编程-银行转账系统:如果两个线程同时修改同一个账户余额,没有适当的保护机制,会发生什么?
java·开发语言·数据库
郑泰科技1 小时前
windows下启动hbase的步骤
数据库·windows·hbase
爱编程的小吴1 小时前
【力扣练习题】热题100道【哈希】189. 轮转数组
算法·leetcode·哈希算法
子一!!1 小时前
MySQL数据库基础操作
数据库·mysql·oracle
leoufung1 小时前
LeetCode 322. Coin Change:从错误思路到正确一维 DP
算法·leetcode·职场和发展