Надеясь, что это возможно только с sql. У меня есть запрос, который возвращает набор данных со столбцами time_stamp и hash_index. По сути, что-то вроде:
1 1583365548 6ff11ad5536f28d66098f6d74f97d877
2 1583365554 6ff11ad5536f28d66098f6d74f97d877
3 1583365556 6ff11ad5536f28d66098f6d74f97d877
4 1583365562 a2e99acb2540d49955ef93fb2684ac25
5 1583365571 a2e99acb2540d49955ef93fb2684ac25
6 1583365572 a2e99acb2540d49955ef93fb2684ac25
7 1583365574 a2e99acb2540d49955ef93fb2684ac25
8 1583365578 a2e99acb2540d49955ef93fb2684ac25
9 1583365580 a2e99acb2540d49955ef93fb2684ac25
Что я хочу сделать, это дополнительно отфильтровать этот запрос, чтобы включить запись, только если hash_index отличается от предыдущей записи. Это то, что я могу сделать, не выкидывая в PHP и l oop через него?
Мой текущий запрос ниже:
SELECT
(@cnt:=@cnt + 1) AS row_number,
time_stamp,
MD5(GROUP_CONCAT(CONCAT(user_state_name,
option_id,
option_code,
item_id,
item_code))) AS hash_index
FROM
user_state
WHERE
user_id = 2
GROUP BY
time_stamp;