MS SQL选择MAX日期问题
问题描述:
我知道这与很多帖子非常相似,但我试图编写一个连接到Microsoft SQL Server的php查询。我可以把它带来我想要的所有相关数据,但是当我把我的where子句放在php查询中不运行时。我有三张桌子MS SQL选择MAX日期问题
| MetalSource | MetalPrice |货币|
在金属价格表中有一个日期/时间字段,我想查找任何日期放入数据库的最新日期,而不考虑时间,这个怎么做?我的查询如下:
$query = "SELECT mp.MetalSourceID, mp.UnitPrice, mp.DateCreated, mp.HighUnitPrice,
mp.PreviousUnitPrice, mp.PreviousHighUnitPrice,
mp.MetalSourceName, cu.Currency FROM tblMetalPrice AS mp
INNER JOIN tblMetalSource as ms ON mp.MetalSourceID = ms.MetalSourceID
INNER JOIN tblCurrency AS cu ON ms.CurrencyID = cu.CurrencyID
WHERE
SELECT MAX (DateCreated)
FROM mp"
就像我已经说过的SELECT语句工作完全正常,但是当我试图降低我的WHERE子句的结果似乎就不行了。
我看过所有其他帖子,并尝试了几种不同的东西,但似乎没有得到我需要的东西。
感谢
答
按照评论:
ORDER BY DateCreated DESC LIMIT 31
这将会对数据进行排序,并通过31行限制它。
你不能做一个WHERE后跟一个选择像那样 - WHERE DateCreated =(SELECT MAX(DateCreated)FROM mp)' – 2014-10-31 09:26:27
谢谢詹姆斯的工作就像一种享受......它是一个星期五的早晨,我的大脑油炸和有趣的事情我知道你不能跟随一个选择的WHERE。 – 2014-10-31 09:32:03
没问题,很高兴帮助。 – 2014-10-31 09:49:37