2017-08-26 20 views
0

client_idとfinancial_yearが同じテーブルから最新のエントリ(added_on)を取得したいのですが、クライアントIDがなく、比較する財務年度もありません。テーブルの中でそれは自己です。mysqlテーブルから最新のエントリを取得

enter image description here

私は、クエリ、次の使用:

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 

と私はそれぞれのclient_idとfinancial_yearが、そのない最新のエントリに対して一意であるこの出力を、持っ

enter image description here

最新の記事を入手する際にお手伝いください。あなたが自分でグループを使用しているとして、これは

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 
+0

.... –

+0

を使用することができ – swap

答えて

1

希望は、この単純にしてみてください、あなたは

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' 

EDIT

それを使用することができます最初の内側のクエリを使用する必要がありますクエリ代わりに

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 ; 
+0

同じ出力私が持っているように、最新のエントリーはありません – swap

+1

誰がこのようなことをupvotesしました – Strawberry

+0

@pattatharasunataraj申し訳ありません、あなたのポイントは何ですか? – Strawberry

0

を助ける

+0

'on clause'の 'fm.client_id'列が不明です – swap

+0

あなたの質問を表示してください。私の提案は、既にclient_idを持っているテーブルfmを持っているので、このエラーを提供しません –

0

クエリの最後に

ORDER BY added_on DESC 
LIMIT 1 

を追加してみてください。

0
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 
あなたが返信みんなのためではなく、いずれかによって制限されつつあるリミット1を全体クエリの出力を追加することによって、ありがとう、そしてまた私が所望の出力を得ていないのですLIMITキーワード
関連する問題