У нас есть Order
таблица. Столбец Object_Id
в является ключом для идентификатора организации или отдельного идентификатора. Столбец object_name
в таблице Order
указывает, является ли Object_id
организацией или контактом.
Я ищу запрос данных, чтобы я мог вывести Organisation.name
или имя контакта (concat(contact.forname, " ", contact.surname)
), где это применимо.
Я считаю, что для этого мне нужно заявление Case
. Ниже приведен SQL-код, с которым я тестировал:
select
object_name,
object_id
case when Order.object_name = 'contact'
then Order.object_id = Contact.id
else Order.object_name ='organisation'
then Order.object_id = Organisation.name
end as object_test,
from Order
join Contact on Order.object_id = Contact.id
join Organisation on Order.object_id = Organisation.id