Используя SQL Server 2017, у меня есть более или менее следующие структуры данных:
+------------+
| Users |
+------------+
| pk: UserID |
| ... |
| ... |
+------------+
+---------------+
| Addresses |
+---------------+
| pk: AddressId |
| AddressCode |
| ... |
| ... |
+---------------+
+-------------------+
| AddressTypes | (Currently just 4 entries 1,2,3,4)
+-------------------+
| pk: AddressTypeId |
| Description |
+-------------------+
+-------------------+
| UserAddresses |
+-------------------+
| fk: UserId |
| fk: AddressId |
| fk: AddressTypeId |
+-------------------+
Что бы я хотел, чтобы запрос возвращался, это UserId, AddressCode со следующим условием. Я хочу, чтобы запрос вернул мне AddressCode, который имеет AddressTypeId 4. Но если AddressTypeId 4 не существует, AddressCode, который имеет AddressTypeId 3, если он снова не существует, AddressTypeId 2, если он снова не существует, AddressTypeId 1 .
Буду признателен, если кто-нибудь сможет помочь.