如何将mysql查询转换为laravel 5的查询生成器?

时间:2017-07-23 16:40:19

标签: mysql laravel-5 query-builder laravel-query-builder

我正在尝试从客户表中获取所有重复行 我想将以下mysql查询转换为查询构建器以在laravel 5中使用。我在文档中搜索但不是运气。

SELECT 
   CustomerName, 
   ContactName, 
   Customers.City 
FROM 
   Customers
INNER JOIN(
            SELECT 
               City 
            FROM Customers 
            GROUP BY City 
            HAVING COUNT(CustomerName) >1 ) temp 
ON Customers.City = temp.City;

在这里我搜索谷歌并尝试这样,但这个查询构建器只显示一行,如果重复。我只想要每个重复的行。

> $duplicates = DB::table('customers')
->select('CustomerName','City', DB::raw('COUNT(*) as `count`'))
->groupBy('CustomerName', 'City')
->having('count', '>', 1)
->get();

非常感谢您提供的任何帮助。谢谢。

2 个答案:

答案 0 :(得分:2)

Laravel支持 func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat { return // what should i put here } 中的子查询。

whereIn

这不会创建相同的查询。但是会返回相同的结果。

答案 1 :(得分:0)

只需删除查询

的groupBy即可