Py学习  »  DATABASE

MySQL:对整个表应用按查询分组

bebe03 • 4 年前 • 1388 次点击  

我有一张桌子 tbl_cross 包含字段 number 和田野 register_id 那是另一张桌子的外键 tbl_registers 包含主键的 id 还有一把外键 collection_id .

通过下面的查询,我得到寄存器1050的重复数。

SELECT qt.*
FROM 
(
    SELECT cr.number, COUNT(*) AS cnt 
    FROM tbl_cross AS cr
    WHERE cr.register_id = 1050 
    GROUP BY cr.number
) AS qt
WHERE qt.cnt > 1 
ORDER BY qt.number ASC

结果是例如:

number | cnt
    11 |   2
   181 |   3
   252 |   2

很简单。现在,我想知道怎么和桌子一起去 待处理寄存器 得到每个寄存器的每个副本。

register_id | number | cnt
       1050 |     11 |   2
       1050 |    181 |   3
       1050 |    252 |   2
       2023 |     12 |   2
       3034 |     77 |   3
       3034 |    106 |   2

或添加WHERE条件以获取属于集合56的每个寄存器的重复值( collection_id=56 ),例如。

谢谢。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/51304
 
1388 次点击  
文章 [ 3 ]  |  最新文章 4 年前