やりたいことはtesttable1,testtable2という二つのテーブルを結合してDBから最新のエラーを取得したいというものです。
SELECT t1.name,t1.code,t2.testid,t2.message,t2.time FROM testdb.testtable1 t1
INNER JOIN testdb.testtable2 t2
ON t1.id = t2.testid
and message like '%error%'
;
[テーブルの中に入っているもの]
testtable1 : name,code
testtable2 : testid,name,time
【わからないこと】
上のsql文でtesttable1のidとtesttable2のtestidを結びつけました。そのうえでmessageの中にあるerrorというものをあいまい検索しているのですが、ここからtimeで取得した日時から一番新しいものだけを取得したいと思っているのですがどのようにすればいいかわかりません。
SELECT t1.name,t1.code,t2.testid,t2.message,t2.time FROM testdb.testtable1 t1
INNER JOIN testdb.testtable2
ON t1.id = t2.testid
and message like '%error%'
where (t2.testid,t2.time) in (select max(t2.time) from testdb.t2.
group by t2.testid);
試しに上のをやってみましたがうまくいきませんでした。どうすればよろしいでしょうか
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。