このSQLを取得するのに問題があります。 iPadとstatlogテーブルの間には1対多の関係があり、最も価値の高い統計ログを選択したいと考えています。結合内でMAX関数を使用する
私の最初の解決策は、MAX-valueを取得したネストされたSELECTを含めることでしたが、lotという時間がかかりましたので、私はそれを書き直すことを余儀なくされました。
SELECT
ipad.udid,
ipad.state,
statelog.new_state
FROM
ipad
LEFT OUTER JOIN
statelog
ON
ipad.udid = statelog.udid
WHERE
ipad.airid=250033
AND
statelog.new_state = MAX(statelog.new_state)
このSQLは機能しませんが、私の意図を示しています。
どのようにクエリが機能しないのですか?エラーになりますか? – Shef
MAX(statelog.new_state)は必要な特定のIDの最大値ではなくMAX値を取得します –
ネストされた選択を使用するのが一般的ですが、 'statelog' 'new_state'なので、SWekoの答えはあなたのために働くはずです。 –