mysql多个结果集拼接一行

五个不同的结果,查询出来,拼接成一行 

SELECT * FROM
	(
		SELECT
			plant_name as plantName
		FROM pv_power_plant
		<if test="plantId != null  and plantId != ''">
			WHERE `status` = '0' and plant_id = #{plantId}
		</if>
		<if test="plantId == null">
			WHERE `status` = '0'
			LIMIT 1
		</if>
	) a
	LEFT JOIN
		(
			SELECT
				station_id as stationId,
				station_name stationName,
				SUM(distinct installed_capacity) as installedCapacityCount,
				SUM(distinct proposed_capacity) as proposedCapacityCount
			FROM pv_power_station
			<where>
				<if test="plantId != null  and plantId != ''"> and plant_id = #{plantId}</if>
			</where>
		) b ON 1=1
	LEFT JOIN
		(
			SELECT
				COUNT(distinct region_id) as areaCount,
				SUM(distinct region_area) as regionAreaCount
			FROM pv_power_region
			<where>
				<if test="plantId != null  and plantId != ''"> and plant_id = #{plantId}</if>
			</where>
		) c ON 1=1
	LEFT JOIN
		(
			SELECT
				COUNT(distinct matrix_code) as matrixCount,
				COUNT(group_series_code) as groupSeriesCount
			FROM pv_group_series
			<where>
				<if test="plantId != null  and plantId != ''"> and plant_id = #{plantId}</if>
			</where>
		) d ON 1=1
	LEFT JOIN
		(
			SELECT
				COUNT(distinct asset_id) as componentNumberCount
			FROM pv_component_asset
			<where>
				<if test="plantId != null  and plantId != ''"> and plant_id = #{plantId}</if>
			</where>
		) f ON 1=1

 

posted @ 2022-11-10 17:37  xiexie0812  阅读(536)  评论(0编辑  收藏  举报