我在 MySQL 数据库中有 3 个表。
表 1(说它被称为client
)有一个客户的信息:client_id and client_name
表 2(说它被称为user_to_client
)有与我系统的用户的每个客户相关的信息:user_id, client_id and order_flag
。
在这个表中clients和users是重复的,order flag表示用户和client有未完成的业务。user_id 和 client_id 的组合在该表中只能找到一次,这意味着用户 5 和客户端 3 只注册了一次。
表 3(称为orders
)保存有关订单基本信息的信息:client_id, user_id, order_id
。它保留了两个不同的日期类型列:date_started 保留了他们开始构建订单的日期信息,而 date_sent 保留了订单发送到操作区域的日期。
我在两个表中重复信息的原因是因为在表 3 中,用户和客户可能有大量不再可用的未完成订单,但我需要保留公司记录。
所以,我需要做的是选择最后 4 个未完成订单的客户而不重复客户,以及最后一个未完成订单的 ID。基本上我需要从表 1 中选择客户端名称,如果该客户端在表 2 中激活了 order_flag(值 1),并且从表 3 中选择了属于该用户的最新 order_id。
我无法修改这些表,因为它们已经被用于另一项工作,那么,有人可以帮助我使用 MySQL 查询来完成这项工作吗?