我正在用三张桌子建立聊天。
对话,Conversation_reply和用户
对话列
Conversation_reply列
用户列
我想使用与特定用户聊天的用户的名称来构建一个列表。
例如,我的身份证是711,而我正和三个人交谈,我想从这三个人那里获得用户名。
我在构建此查询时遇到一些问题,因为user_one和user_two是相对的,来自接收器的ID有时可以作为user_one或user_two插入。这取决于哪个用户首先开始聊天。
如何构建查询来执行此操作?
感谢。
答案 0 :(得分:1)
根据您的RDBMS,您可以检查IF / ELSE,CASE / WHEN语法。 在此基础上你写下声明:
SELECT if (user_one=711) user_two ELSE user_one
FROM conversation
where user_one=711 OR user_two=711
这是伪代码,但想法应该清楚。