次のSQLクエリとMySQLに問題があります
SELECT
id, cpid, label, cpdatetime
FROM
mytable AS a
WHERE
id NOT IN
(
SELECT
id
FROM
mytable AS b
WHERE
a.label = b.label
AND
a.cpdatetime > b.cpdatetime
)
AND
label LIKE 'CB%'
AND
cpid LIKE :cpid
GROUP BY label
ORDER BY cpdatetime ASC
テーブルはこんな感じ
1 | 170.1 | CB55 | 2013-01-01 00:00:01
2 | 135.5 | CB55 | 2013-01-01 00:00:02
3 | 135.6 | CB59 | 2013-01-01 00:00:03
4 | 135.5 | CM43 | 2013-01-01 00:00:04
5 | 135.5 | CB46 | 2013-01-01 00:00:05
6 | 135.7 | CB46 | 2013-01-01 00:00:06
7 | 170.2 | CB46 | 2013-01-01 00:00:07
クエリを返したい
3 | 135.6 | CB59
5 | 135.5 | CB46
編集
ラベルは犬/猫であり、cpidsは犬/猫を飼っている一時的な家族です。
犬/猫は家族から家族へと移動します。
:userinputファミリーに属していた犬/猫を見つける必要がありますが、以前は別のファミリーに属していなかった場合に限ります。
データベースを変更することはできず、データをそのまま処理する必要があります。アプリケーション/データベーススキーマを作成したのは私ではありません。