【发布时间】:2016-05-06 14:37:55
【问题描述】:
我有一个 assigns 表,其中包含以下列:
id - int
id_lead - int
id_source - int
date_assigned - int (this represents a unix timestamp)
现在,假设我在此表中有以下数据:
id id_lead id_source date_assigned
1 20 5 1462544612
2 20 6 1462544624
3 22 6 1462544615
4 22 5 1462544626
5 22 7 1462544632
6 25 6 1462544614
7 25 8 1462544621
现在,假设我想计算 id_source 为 6 的行数,并且是每个潜在客户的第一个条目(按 date_assigned asc 排序)。
所以在这种情况下,计数 = 2,因为有 2 个潜在客户(id_lead 22 和 25),其第一个 id_source 为 6。
我将如何编写此查询以使其速度快并且可以作为子查询选择正常工作?我在想这样的事情是行不通的:
select count(*) from `assigns` where `id_source`=6 order by `date_assigned` asc limit 1
我不知道如何以最佳方式编写此查询。任何帮助将不胜感激。
【问题讨论】:
-
查看我的更新,我认为简单的查询对你来说已经足够了