私はこのようなテーブル構造を持っています
+---+----------+-----------+--------------+ | | id| 顧客 | 住所 | アドレスタイプ | +---+----------+-----------+--------------+ |1 | 1 | アドレス 1 | 2 | |2 | 2 | アドレス 2 | 2 | |3 | 1 | アドレス 3 | 1 | +---+----------+-----------+--------------+
データベースには 2 つの Address_types があります。次の条件に基づいて住所を選択する必要があります
- Address_type = 1 の顧客の住所が存在する場合は、その住所を表示します。
- Address_type = 1 が存在せず、Address_type = 2 が存在する場合、その顧客の Address_type = 2 住所を表示します。
- その顧客に両方が存在する場合は、Address_type = 1 の住所のみを表示します。
OR条件でこれを試しましたが、データベースの最初のレコードが表示されるので、mysqlクエリでこれを1つのクエリだけで達成する方法はありますか? つまり、両方の Address_types(1 と 2) がデータベースに存在する場合、OR 条件で優先して Address_type = 1 レコードのみをフェッチするようなものですか?