Php 从mysql表中获取最新添加的条目
我想从客户id和财务年度相同的表中获取最新条目(添加),但我没有客户id或财务年度可供比较,我需要在表it self中对它们进行比较 我使用了以下查询:Php 从mysql表中获取最新添加的条目,php,mysql,Php,Mysql,我想从客户id和财务年度相同的表中获取最新条目(添加),但我没有客户id或财务年度可供比较,我需要在表it self中对它们进行比较 我使用了以下查询: SELECT * FROM file_mgmt fm , client c , cupboard cb where fm.client_id = c.client_id AND fm.cupboard_id = cb.cupboard_id AND fm.status = 'Active' G
SELECT *
FROM file_mgmt fm
, client c
, cupboard cb
where fm.client_id = c.client_id
AND fm.cupboard_id = cb.cupboard_id
AND fm.status = 'Active'
GROUP
BY fm.client_id
, fm.financial_year
我得到了这个输出,每个客户id和财务年度都是唯一的,但它不是最新的条目
请帮助获取最新条目。希望这会有所帮助
SELECT * FROM file_mgmt fm, client c, cupboard cb where fm.`client_id` = c.`client_id` AND fm.`cupboard_id` = cb.`cupboard_id` AND fm.status = 'Active'
GROUP BY fm.`client_id`, fm.`financial_year`
ORDER BY id DESC
LIMIT 1
当您使用GROUPBY时,您必须首先使用内部查询,然后才能使用它
SELECT fm.*,c.*,cb.* FROM file_mgmt fm, client c, cupboard cb
JOIN (SELECT file_mgmt_id,client_id, financial_year,max(added_on)
FROM file_mgmt GROUP BY client_id,financial_year) as fm1
ON fm.file_mgmt_id = fm1.file_mgmt_id
where fm.`client_id` = c.`client_id` AND
fm.`cupboard_id` = cb.`cupboard_id` AND fm.status = 'Active'
编辑
请尝试这个更简单的查询
SELECT fm.*,max(added_on) FROM file_mgmt fm,
client c , cupboard cb
where fm.client_id = c.client_id
AND fm.cupboard_id = cb.cupboard_id
AND fm.status = 'Active'
group by client_id,financial_year ;
尝试添加
ORDER BY added_on DESC
LIMIT 1
在您的查询结束时。您可以使用LIMIT关键字谢谢您的回复,但通过添加LIMIT 1,整个查询的输出将受到一个限制,而且我没有得到所需的输出…与我得到的输出相同,没有最新的输入。请停止并帮助我“on子句”中的未知列“fm.client\u id”显示您的查询。我的建议不会提供此错误,因为它已经具有具有客户端id的表fm
SELECT *
FROM file_mgmt fm
, client c
, cupboard cb
where fm.client_id = c.client_id
AND fm.cupboard_id = cb.cupboard_id
AND fm.status = 'Active'
GROUP
BY fm.client_id
, fm.financial_year
ORDER BY added_on DESC
LIMIT 1