我有两个带有链接数据的表。有针对单个客户(客户id)的活动更新。我想返回每个客户最近的活动;
联系客户id(自动增量)姓氏姓氏姓氏
电话工作
活动活动\u id(自动增量)数据\u项目\u id按日期输入\u创建注释
我可以返回整套活动;
从联系人的联系人加入活动中选择姓氏、名、创建日期、备注。客户id=活动。数据项标识;
...但是我只想要每个customer_name最近的活动。如果我使用唯一,它似乎返回每个customer_name的第一个活动,而不是最近的。我肯定它非常简单,但我还没有找到。想法?
还有一个解决方案:
select temp.* from
(
SELECT c.last_name last, c.first_name first, a.date_created, a.notes
FROM contact c JOIN activity a ON c.customer_id=a.data_item_id
order by a.date_created desc
) temp
group by temp.last, temp.first;
如果每个客户仍然有多个记录,那么建议将使用RANK()来考虑(由…分区)来选择最近的记录。
您可以使用MAX(date\u created)
从联接表中选择正确的行。否则MySQL将加入所有行,或者如果是groupby
,则选择它找到的第一个匹配行。
因此,问题是:
SELECT MAX(date_created) AS date, last_name, first_name, notes
FROM contact JOIN activity ON contact.customer_id=activity.data_item_id
ORDER BY customer_id ASC
问题内容: 编辑:我正在使用MySQL,我发现了另一个具有相同问题的帖子,但是它在Postgres中。我需要MySQL。 获取SQL中另一列的每个值的最通用值 在广泛搜索本网站和其他网站之后,我提出了这个问题,但没有找到符合我预期目的的结果。 我有一个人表(recordid,personid,transactionid)和一个事务表(transactionid,rating)。我需要一条SQL语句
问题内容: 我有一个带有时间戳字段的表。如何获得最近3个月的数据? 特别是,三月是我当前的月份,请说 03/2012 。我只需要返回3月,2月和1月的记录。 问题答案: 今天前3个月: 从第一个月开始:
我正在尝试使用Altova XMLSpy和XQuery1.0为每个客户返回最近的订单。 在SQL中,查询如下所示: 它返回16行,但我无法获得类似于XQuery中的工作。 我尝试了多种不同的代码,我认为我得到的最接近的代码是: 对于XML从MS Access导出的糟糕的标记名表示歉意。 请救命!提前道谢。 编辑:在尝试JoeMFB的解决方案后,当我只需要最近的(或最大日期)时,我会收到每个客户的所
我想查询表A中每个点(id)到表B中每个多边形(id)的距离。对于距离计算,我使用ST_距离。但是,ST_Distance(显然)返回到每个多边形的距离。但我只需要每个点的“最接近”结果。到目前为止,我尝试了下面的查询,它返回了正确的结果,但是(当然)只返回了一个点。 结果应该是这样的: 你有什么提示吗?非常感谢你。 更新1 运行上述查询(3h 24m)后,返回的结果为空。然而,应该有一个结果。括
我有CSV中的交易数据,其中包含
问题内容: 我有此数据: 代码(对于SQL Server 2005): 我想为每个名称获取具有最新DATE的ID。像这样: 实现此目的最优雅的方法是什么? 问题答案: 尽量避免使用保留字(和模糊的列名),例如…