gpt4 book ai didi

laravel - 如何选择重复行并按两列分组

转载 作者:行者123 更新时间:2023-12-02 06:32:16 24 4
gpt4 key购买 nike

我有下表:

ID|user_id|group_id|subject |book_id
1| 2 |3 |history |1
2| 4 |3 |history |1
3| 5 |3 |art |2
4| 2 |3 |art |2
5| 1 |4 |sport |5

我想列出组 3(id) 的所有行,这些行具有具有相同 subject_id 和 book_id 的重复行。主题和 book_id 决定 2 行或更多行是否重复。

我希望我的不同结果看起来像这样:

|subject |book_id|
|history |1 |
|art |2 |

使用查询构建器或 Eloquent

最佳答案

获得所需结果的 SQL 查询可能如下所示

SELECT subject, book_id
FROM table1
WHERE group_id = 3
GROUP BY subject, book_id
HAVING COUNT(*) > 1

这是一个 SQLFiddle 演示

现在同样使用 Laravel 查询生成器

$duplicates = DB::table('table1')
->select('subject', 'book_id')
->where('group_id', 3)
->groupBy('subject', 'book_id')
->havingRaw('COUNT(*) > 1')
->get();

关于laravel - 如何选择重复行并按两列分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31395738/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com