我不知道以下查询意味着什么,因为我没有接触过MS Access。我需要将它转换为MySQL,我无法弄清楚LAST()做了什么
SELECT
Containers.Container_No,
Max(Containers.LastOfContainer_Date),
Max(Containers.LastOfContainer_Time),
Last(Containers.LastOfETD),
Last(Containers.LastOfContainer_Status),
Last(Containers.LastOfPickup_From),
Last(Containers.LastOfPickup_To),
Last(Containers.LastOfConsignee_Name),
Last(Containers.LastOfContract_No),
Last(Containers.LastOfSeaLNo)
FROM
Containers
WHERE
Containers.Customer_Name = 'value here"
AND
Containers.LastOfContainer_Date >='Date here'
AND
Containers.LastOfContainer_Date <= 'Date here'
GROUP BY
Containers.Container_No
有人可以解释一下这个LAST()实际上做了什么吗? 的更新 似乎可以将查询更改为以下内容:
SELECT
Containers.Container_No,
Max(Containers.LastOfContainer_Date),
Max(Containers.LastOfContainer_Time),
Containers.LastOfETD,
Containers.LastOfContainer_Status,
Containers.LastOfPickup_From,
Containers.LastOfPickup_To,
Containers.LastOfConsignee_Name,
Containers.LastOfContract_No,
Containers.LastOfSeaLNo
FROM
Containers
WHERE
Containers.Customer_Name = '".$customername."'
AND
Containers.LastOfContainer_Date >='".$fromdate."'
AND
Containers.LastOfContainer_Date <= '".$todate."'
GROUP BY
Containers.Container_No
order by
Containers.LastOfETD,
Containers.LastOfContainer_Status,
Containers.LastOfPickup_From,
Containers.LastOfPickup_To,
Containers.LastOfConsignee_Name,
Containers.LastOfContract_No,
Containers.LastOfSeaLNo
答案 0 :(得分:1)
Last函数返回给定查询的最后一个值,例如我假设在您使用它的查询中将返回该特定客户所做的最后一笔交易的数据, 例如,让我们说Mike Jagger今天购买了2个,他将在同一个日期进行2次交易,如果您使用最后一个函数,您将获得插入的最新信息。
ID | Date | Product
1 12/12/2011 socks
2 12/12/2011 shirt
select last(product)
from buys;
it would output : shirt
BTW模仿您可能想要使用的行为
ORDER BY product DESC LIMIT 1
答案 1 :(得分:0)
根据this page,“ 最后函数返回查询结果集中的最后一个值。”
你可能需要做某种ORDER BY x DESC LIMIT 1
。