力扣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
相关推荐
qq_1898070313 小时前
C#怎么操作数据库存储过程 C#如何调用SQL Server存储过程传参并获取返回结果【数据库】
jvm·数据库·python
m0_7467523013 小时前
HTML5视频标签针对不同设备DPR的资源选择逻辑
jvm·数据库·python
2301_7735536213 小时前
c++怎么在Linux下获取文件被最后一次访问的精确纳秒时间【进阶】
jvm·数据库·python
是宇写的啊13 小时前
MyBatis-3
数据库
gmaajt13 小时前
CSS如何给按钮添加按下缩小的动画_利用-active配合transform
jvm·数据库·python
m0_7478545213 小时前
CSS如何让响应式图片在容器内居中_利用background-position
jvm·数据库·python
笨鸟先飞的橘猫13 小时前
Mysql——MVCC学习
数据库·学习·mysql
2401_8716965213 小时前
CSS如何优化移动端CSS选择器性能_遵循BEM规范避免过长嵌套
jvm·数据库·python
是宇写的啊13 小时前
MyBatis-2
数据库
2401_8836002513 小时前
Cgo 回调中处理 const char- 参数的正确方法
jvm·数据库·python