Tengo tres tablas como se muestra en la imagen de abajo.¿Cómo seleccionar datos de múltiples tablas utilizando joins/subquery correctamente? (PHP-MySQL)
Nota:Columna clave de tabla almacena projectheader un ID de empleado.
Lo que queremos es que sea capaz de recuperar algo así como el que está en la mesa mi objetivo (plomo, muestra el nombre principal de ese empleado)
yo era capaz de hacer que el uso de la consulta a continuación.
SELECT DISTINCT
projectdetails.ProjectDetailsID,
projectheader.ProjectID,
projectheader.ProjectName,
projectheader.Lead,
projectheader.StartDate,
projectheader.EndDate,
projectheader.Status,
projectheader.Remarks,
projectdetails.EmployeeID,
employee.Firstname,
employee.Lastname,
Lead.Leadname
FROM
projectheader,
projectdetails,
employee,
(SELECT
projectheader.ProjectID AS projid,
CONCAT(employee.Firstname,' ',employee.Lastname) AS Leadname
FROM employee, projectheader, projectdetails
WHERE projectheader.ProjectID = projectdetails.ProjectID
AND projectheader.Lead = employee.EmployeeID
) AS Lead
WHERE projectheader.ProjectID = projectdetails.ProjectID
AND projectdetails.EmployeeID = employee.EmployeeID
AND projectheader.ProjectID = Lead.projid
AND projectdetails.ProjectID = Lead.projid
y consiguió este resultado:
La consulta que he utilizado es bastante largo y tal vez no sea bien escrito, me gustaría saber de una manera diferente de cómo podría conseguir el mismo resultado mediante una mejor consulta sql ya sea mediante join o una subconsulta. (Agregué un DISTINCT al comienzo de los detalles del proyecto. ProjectDetailsID porque sin él algunas filas están duplicadas). Estoy en busca de una mejor consulta que la que estoy usando actualmente.
no hablan, Sólo actúa. –