我在查询时遇到了麻烦。如果遇到问题,我想加入表格。这是我正在使用的查询。我是这些案例陈述的新手,因此非常感谢您的帮助!
SELECT conversation.c_id, conversation.user_one, conversation.user_two, users.name, users.lastName FROM `conversation` CASE WHEN conversation.user_one = 1 THEN INNER JOIN `users` ON conversation.two = users.id WHEN conversation.user_two = 1 THEN INNER JOIN `users` ON conversation.user_one = users.id END CASE WHERE `user_one` = 1 OR `user_two` = 1
不要对整个内部联接进行大小写处理,仅对联接中的“ on”子句进行大小写处理。这应该工作(除非我有错别字):
SELECT conversation.c_id, conversation.user_one, conversation.user_two, users.name, users.lastName FROM `conversation` INNER JOIN `users` on users.id = CASE WHEN conversation.user_one = 1 THEN conversation.two WHEN conversation.user_two = 1 THEN conversation.user_one END WHERE `user_one` = 1 OR `user_two` = 1
您还可以通过在这些条件中的每个条件上左键连接,然后在select语句中使用case语句来确定要从中显示记录的两个表中的哪一个来获得类似的效果。