gpt4 book ai didi

Mysql语句从两列中选择不同的行

转载 作者:行者123 更新时间:2023-11-29 05:20:23 24 4
gpt4 key购买 nike

我正在尝试编写一个 mysql 语句,它只从我的聊天系统中提取唯一的消息。有一个 to_id 和一个 from_id。我想从每次谈话中抽出一行。

问题是如果有一行 to_id = 1 来自_id = 2和另一行 to_id = 2 来自_id = 1我希望这两行被视为相同。

我想到的语句是“SELECT * FROM chat_messages GROUP BY to_id,from_id”。除了我上面提到的情况外,这都有效。

我做的另一个尝试是使用“SELECT DISTINCT least(to_id,from_id) as value1, greatest(to_id,from_id) as value2 from chat_messages”。

这会返回我需要的内容,但我不知道如何从行中获取其余信息,如消息、时间戳等。它只给我 value1 和 value2,它们是 to_id 和 from_id。

最佳答案

只需将第二个查询中的表达式用于第一个查询的 GROUP BY:

SELECT * FROM chat_messages GROUP BY LEAST(to_id,from_id), GREATEST(to_id,from_id)

关于Mysql语句从两列中选择不同的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26707468/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com