Mysql 选择最早和最晚的日期

Mysql 选择最早和最晚的日期,mysql,sql,Mysql,Sql,因此,我有一个表格,其结构如下: in_click first_name create_date 100 joe 2011-10-01 10:01 100 joe 2011-10-01 10:05 100 joe 2011-10-01 10:07 100 joe 2011-10-01 10:08 100 joe

因此,我有一个表格,其结构如下:

in_click  first_name      create_date 
100       joe             2011-10-01 10:01
100       joe             2011-10-01 10:05
100       joe             2011-10-01 10:07
100       joe             2011-10-01 10:08
100       joe             2011-10-01 10:10
101       sara            2011-10-01 10:15
101       sara            2011-10-01 10:17
101       sara            2011-10-01 10:20
101       sara            2011-10-01 10:22
对于每个名字,我要选择第一行和最后一行。 所以这应该是第一次约会,名字是乔,最后一次约会 那里的名字是乔。有点像if-else语句,但是 我只是不知道如何在MySQL中获取这些信息

救命啊

我正在运行以下查询以获取所有内容:

SELECT t.in_click_id, t.keyword, c.lead_id, c.first_name, c.last_name, 
ls.create_date, ls.discriminator, l.affiliate_id 
FROM lead_status AS ls
INNER JOIN leads AS l ON l.id = ls.lead_id 
INNER JOIN tracker AS t ON l.in_click_id = t.in_click_id
INNER JOIN contacts AS c ON ls.lead_id = c.lead_id 
WHERE l.affiliate_id NOT IN('1002','1003')
AND ls.create_date BETWEEN '2011-11-09' AND '2011-11-10';
这就是我想要得到的:

in_click  first_name      create_date 
100       joe             2011-10-01 10:01
100       joe             2011-10-01 10:10
101       sara            2011-10-01 10:15
101       sara            2011-10-01 10:22

你用过最小值和最大值函数吗


第一个和最后一个是指表中最早的日期和最晚的日期吗?如果是这样,您将需要查询并使用日期的MAX和MIN函数。

这适用于您提供的数据,不能说它在MySQL中有效,但在SQL Server中有效

select t.in_click, 
    t.first_name,
    t.create_date
from tracker t
where 
    t.create_date = (select min(create_date) from tracker where in_click = t.in_click)
    or t.create_date = (select max(create_date) from tracker where in_click = t.in_click)