leetcode-sql数据库面试题冲刺(高频SQL五十题)

题目:

1148.文章浏览 I

Views 表:

±--------------±--------+

| Column Name | Type |

±--------------±--------+

| article_id | int |

| author_id | int |

| viewer_id | int |

| view_date | date |

±--------------±--------+

此表可能会存在重复行。(换句话说,在 SQL 中这个表没有主键)

此表的每一行都表示某人在某天浏览了某位作者的某篇文章。

请注意,同一人的 author_id 和 viewer_id 是相同的。

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

结果按照 id 升序排列。

思路:

使用as关键词,来给找出来的author_id列设置别名为id。

由于此表中可能存在重复行,所以需要使用 "distinct" 关键字来进行去重。

需要找的是作者,那么select寻找的就是author_id,其次给出符合的条件为"浏览过自己文章的作者",所以用and逻辑运算符将author_id=viewer_id 条件列出,再使用where关键字在表中过滤不符合条件的表格行,确保最后结果是对的。

最后再使用order by使id列按照升序排列即可。

代码:

sql 复制代码
select distinct author_id as id
from Views
where author_id = viewer_id
order by id
相关推荐
向上的车轮7 分钟前
什么是时序数据库?有哪些时序数据库?常见的运用场景有哪些?
数据库·时序数据库
岱宗夫up1 小时前
【Python】Django 中的算法应用与实现
数据库·python·opencv·django·sqlite
不知道取啥耶1 小时前
C++ 滑动窗口
数据结构·c++·算法·leetcode
比花花解语2 小时前
使用数据库和缓存的时候,是如何解决数据不一致的问题的?
数据库·缓存·数据一致性
YGGP2 小时前
Redis篇:基础知识总结与基于长期主义的内容更新
数据库·redis·缓存
KINICH ahau2 小时前
数据库1-2章
数据库·oracle
夏炎正好眠4 小时前
mysql练习
数据库·mysql
NineData4 小时前
NineData 社区版正式上线,支持一键本地化部署!
数据库·程序员
大0马浓4 小时前
LLM训练如何从图片提取信息存入向量数据库
数据库·训练·rag