一個表中的字段根據另一個表的id顯示另一個表的其他字段

表一結構:

ccpm_crm_customer

表二結構: 

sys_user

 

現在根據表一中 CREATED_BY,UPDATED_BY關聯sys_user表user_id顯示爲username

sql:

SELECT
	`OBJECT_SID`,
	`CREATED`,
	`LEADER`,
	su1.username AS `CREATED_BY`,
	`UPDATED`,
	su2.username AS `UPDATED_BY`,
	`ORG_SID`,
	`IS_ACTIVE`,
	`LOCK_VERSION`,
	cc.`NAME` AS `NAME`,
	`CONTACT_SID`,
	`IS_TOP`,
	`PARENT_SID`,
	`IS_VIP` 
FROM
	(
	SELECT
		c.`OBJECT_SID`,
		c.`CREATED`,
		GROUP_CONCAT( su.username SEPARATOR ',' ) AS `LEADER`,
		c.`CREATED_BY`,
		c.`UPDATED`,
		c.`UPDATED_BY`,
		c.`ORG_SID`,
		c.`IS_ACTIVE`,
		c.`LOCK_VERSION`,
		c.`NAME` AS `NAME`,
		c.`CONTACT_SID`,
		c.`IS_TOP`,
		c.`PARENT_SID`,
		c.`IS_VIP` 
	FROM
		ccpm_crm_customer c
		LEFT JOIN ccpm_user_customer cu ON c.OBJECT_SID = cu.customerId
		LEFT JOIN sys_user su ON su.user_id = cu.uid 
	GROUP BY
		c.OBJECT_SID 
	) cc
	INNER JOIN sys_user su1 ON cc.CREATED_BY = su1.user_id
	INNER JOIN sys_user su2 ON cc.UPDATED_BY = su2.user_id

因爲表一中兩個字段關聯表二id字段,所以要inner join兩次

這種查詢不能使用where判斷條件

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章