sql查询获取用户的下拉点

时间:2018-04-11 10:10:45

标签: mysql

我在下面的图片中提供了一张桌子。 索引的顺序是消息的步骤,它告诉我用户在何处与机器人聊天。

所以,现在我想用它的消息来获取order_index的所有最后一步。

例如(4,感谢信息),(4感谢您的信息),(2,您的电话号码是多少),(2,您的电话号码是多少)

我只想获得机器人消息的真实位置,如果用户结束3并且消息是我的电话号码是0123456789,我想退一步获取机器人消息。

image

1 个答案:

答案 0 :(得分:0)

如果您有message_id作为唯一标识符,则可以使用group by

对记录进行分组
WITH ABC AS (SELECT MAX(order_index) AS order_index,message_id FROM MESSAGES GROUP BY message_id)
SELECT MESSAGE FROM MESSAGES 
INNER JOIN 
ABC 
ON ABC.message_id = MESSAGES.message_id 
   AND ABC.order_index= MESSAGES.order_index;