需求复现

现在我们有一张题库表(sys_topic),表内有题目选项等字段,如下所示:

id

topic

A

B

C

1

123

我是选项A

我是选项B

我是选项C

2

仙桃

我是选项A

我是选项B

我是选项C

3

仙桃

我是选项A

我是选项B

我是选项C

4

happyhappyhappy

我是选项A

我是选项B

我是选项C

现在我们需要根据题目去查重,我们其实只需要在sql语句上做文章便可实现该功能

需求实现

先来展示sql语句:

select * from sys_topic where topic in 
<p>(select topic from sys_topic group by topic having count(topic) > 1)

现在让我们来一起解读一下这段代码:

这个 子查询 查询题目并根据题目分组,再获取到分组后数量大于1的题目,即重复的题目,于是我们在外层的查询便是查询出那些题目等于这些重复题目,根据所需查询出自己想要的东西

实现出来的效果便是这样

提示:查询最好不要用星号,要用具体字段表示