0
我有以下查询:Mysql的内部连接 - >如果返回null空,否则返回名字
SELECT
projects.id AS project_id,
projects.name AS project_name,
projects_tasks.id AS task_id,
projects_tasks.name AS task_name,
projects_tasks_timings.id AS timing_id,
projects_tasks_timings.registered_time AS timing_time,
projects_tasks_timings.edit_reason AS timing_description,
projects_tasks_timings.date AS timing_date,
projects_tasks_timings.created_at AS timing_date2,
projects_tasks_timings.updated_at AS timing_date3,
users.name AS timing_user_name,
users.surname AS timing_user_surname,
users2.name AS timing_user_name_update,
users2.surname AS timing_user_surname_update
FROM `projects_tasks_timings`
INNER JOIN `users`
ON users.id = projects_tasks_timings.user_id
INNER JOIN `users`
AS users2 ON users2.id = projects_tasks_timings.updated_by
INNER JOIN `projects_tasks`
ON projects_tasks.id = projects_tasks_timings.task_id
INNER JOIN `projects`
ON projects.id = projects_tasks.project_id
$task_clause
$user_clause
LIMIT $limit OFFSET $start
这将返回大量的数据,但它没有。我认为因为users2
上的inner join
与任何列都不匹配,因为它们都是null
值。
我想实现的是:
如果没有匹配它应该返回null。如果有匹配,它应该返回用户的名字。
我已经通过使用内部连接的where子句来查看一些问题,但迄今为止没有成功。
任何人都可以帮助我吗?谢谢!
感谢,这对我的作品:) –