MySQL присоединиться, чтобы получить информацию о пользователе - PullRequest
0 голосов
/ 04 июня 2018

У меня есть таблица A с 2 разными идентификаторами пользователя (Originator и Assigned_To) и

отдельная таблица B с идентификаторами, именем, фамилией и т. Д.

TABLE A (ВЫПУСК)

  Ticket | Originator | Assigned_To
  TKT1234  abc452       kshd736
  TKT1235  abc453       kshd738
  TKT1236  abc454       kshd739

ТАБЛИЦА B (Таблица пользователей)

  User ID | First Name | Last Name 
  abc452     John        Smith
  kshd736    Mary          J
  abc453     A           Sharma
  kshd738   Brad         Smith

Обязательная таблица результатов:

  Ticket | Originator Name    | Assigned_To_Name 
  TKT1234  John Smith(abc452)    Mary J(kshd736)
  TKT1235  A Sharma(abc453)      Brad Smith(kshd738)
  ....
  ....

Как можно объединить эти две таблицы, чтобы получитькомбинированное поле (имя + идентификатор).Я попробовал что-то ниже, но это не так:

   (select  ticket_id,
concat(e.first_name,e.last_name, " (", a.originator, ")")  as originator , 
  concat(e.first_name,e.last_name, " (", a.issue_assigned_to, ")")  as 
 assigned_to 
 FROM ISSUE a
 LEFT JOIN DPDM_ISSUE_REVISION_RELATIONSHIP b ON a.name = b.issue
   LEFT JOIN DPDM_REVISION c ON b.reported_against_revision = c.name
   LEFT JOIN DPDM_MASTER d ON c.master = d.name
    left join USER e on a.originator = e.user_id 
 where a.lifecycle_state not in ("Closed") and ( c.name like '%HVBMS%' OR c.name like '%BCC6%'));

Может ли кто-нибудь помочь в этом?Спасибо!

1 Ответ

0 голосов
/ 04 июня 2018

Ваш запрос кажется случайным SQL, связанным с вопросом, который вы задаете.Я предполагаю, что вы хотите сделать что-то вроде этого:

SELECT a.ticket, 
  CONCAT(b.first_name, " ", b.last_name, " (", a.originator,")") as originator_name, 
  CONCAT(c.first_name, " ", c.last_name, " (", a.assigned_to,")") as assigned_to_name
FROM ISSUE a
LEFT JOIN USER b ON a.originator = b.user_id
LEFT JOIN USER c ON a.assigned_to = c.user_id

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...