我有这样的表结构
+---+----------+------------+--------------+ | 编号| 客户 | 地址 | 地址类型 | +---+----------+------------+--------------+ |1 | 1 | 地址 1 | 2 | |2 | 2 | 地址 2 | 2 | |3 | 1 | 地址 3 | 1 | +---+----------+------------+--------------+
数据库中有两种地址类型。我必须根据以下条件选择地址
- 如果存在 Address_type = 1 的客户的地址,则显示该地址。
- 如果 Address_type = 1 不存在且 Address_type = 2 存在,则显示该客户的 Address_type = 2 地址。
- 如果该客户两者都存在,则仅显示 Address_type = 1 的地址
我已经通过 OR 条件尝试了这个,但它显示了数据库中第一个记录,所以 mysql 查询中有办法只用一个查询来实现这一点吗?即在数据库中同时存在 Address_types(1 和 2) 时,在 OR 条件中优先获取 Address_type = 1 记录之类的东西?