OwnerId
次の4つのレコードから、 2番目に新しいレコードを選択したい
ItemId OwnerId Date
11477 20981 2013-05-13
11477 1 2013-05-21
11477 21086 2013-05-22 #this is the one I'm talking about
11477 3868 2013-05-24
それについてどうやって行くのですか?
これはItemID
指定する必要があり、
SELECT *
FROM TableName
WHERE ItemID = '11477'
ORDER BY DATE DESC
LIMIT 1,1
ただし、 を指定せずItemID
、 ごとに 2 番目に新しいすべてのレコードを取得する場合は、相関サブクエリを使用して、 lastestに基づいてItemID
すべてのシーケンス番号を生成できます。ItemID
DATE
SELECT ItemId, OwnerID, Date
FROM
(
SELECT A.ItemId,
A.OwnerId,
A.Date,
(
SELECT COUNT(*)
FROM tableName c
WHERE c.ItemId = a.ItemId AND
c.Date >= a.Date) AS RowNumber
FROM TableName a
) x
WHERE RowNumber = 2
select ownerid
from your_table
order by date desc
limit 1, 1
降順で日付をORDER BY
指定すると、新しいものから古いものの順に並べ替えられ LIMIT 1,1
、2番目の結果のみを取得できます。これは、探しているものです。
SELECT *
FROM table
ORDER BY date DESC
LIMIT 1,1