如何使用 Propel ORM 在数据库中查找重复条目?

Posted

技术标签:

【中文标题】如何使用 Propel ORM 在数据库中查找重复条目?【英文标题】:How to find duplicate entries in database using Propel ORM? 【发布时间】:2013-07-03 04:39:48 【问题描述】:

我想在我的表格中查找重复的条目并显示所有这些条目。如何使用 Propel ORM 在一列中查找所有重复值?

【问题讨论】:

【参考方案1】:

好吧,this question 建议使用计数...您可以在 Propel 中复制该查询(我认为):

$results = TableNameQuery::create()
  ->select(array("id", "field", "COUNT(*)"))
  ->groupBy("field")
  ->having("COUNT(*) > ?", 1)
  ->find();

当然,这有点麻烦,所以如果 Propel 失败了,你可能只想直接使用 SQL。

(供参考,这里是 SQL:)

SELECT field, COUNT(*)
  FROM table_name
  GROUP BY field
  HAVING count(*) > 1

【讨论】:

以上是关于如何使用 Propel ORM 在数据库中查找重复条目?的主要内容,如果未能解决你的问题,请参考以下文章

如何获取相关对象 Propel ORM

如何将 Propel ORM 与 Informix 数据库连接

当字段值包含/或\时,Propel ORM无法过滤

为啥我不能在其他类或函数中使用我的 Propel ORM 类?

Propel ORM:如果这样的对象不存在,如何仅保存对象

Propel ORM - 连接不相关的表