首页 > 数据库 >mysql多个结果集拼接一行

mysql多个结果集拼接一行

时间:2022-11-10 17:45:05浏览次数:36  
标签:plant pv distinct plantId 一行 拼接 mysql id SELECT

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

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

 

标签:plant,pv,distinct,plantId,一行,拼接,mysql,id,SELECT
From: https://www.cnblogs.com/mask-xiexie/p/16877853.html

相关文章

  • MySQL的InnerDB和MySAM索引实现
     InnoDB索引实现 InnoDB也使用B+Tree作为索引结构,但具体实现方式却与MyISAM截然不同。InnoDB的主索引:MyISAM索引文件和数据文件是分离的,索引文件仅保......
  • Centos mysql主从复制配置
    1、需要准备两台mysql服务器。我这里主机mt1 从机mt2查看两个服务器的防火墙是否关闭;如果没有关闭需要关闭。查看防火墙状态命令。statusfirewalld;如果是通过虚拟机克隆......
  • 关于使用pt-heartbeat监测MySQL主从复制延迟的方法
    pt-heartbeat的工作原理通过使用时间戳方式在主库上更新特定表,然后在从库上读取被更新特定表里的时间戳,再与本地系统时间对比来得出其延迟。具体流程:1)在主库上创建一张heart......
  • mysql (DDL)
    MYSQL(康老师-DDL) 创建和管理表SELECT*FROM`order`;#1.创建和管理数据库#1.1如何创建数据库#方式1:CREATEDATABASEmytest1;#创建的此数据库使用的是默认......
  • MySQL的排序和分页语句(十八)
    我看到了那天的夕阳,美得如此骄艳,我便决定,追寻夕阳,拼尽余生。上一章简单介绍了MySQL的分组和分组后筛选语句(十七),如果没有看过,​​请观看上一章​​一.MySQL的排序和分......
  • MySQL的分组和分组后筛选语句(十七)
    我看到了那天的夕阳,美得如此骄艳,我便决定,追寻夕阳,拼尽余生。上一章简单介绍了MySQL的查询where语句(十六),如果没有看过,​​请观看上一章​​一.MySQL的分组语句MySQL中......
  • MySql数据库触发器DML(数据库操作)
    1.数据库触发器的作用是什么?触发器主要用于强制复杂的业务规则和要求,还有助于强制引用的完整性,便于在添加,更新或删除表中的行时保留表之间已定义的关系。 2.新建两张......
  • MySQL的子查询(二十)
    勿以恶小而为之,勿以善小而不为--------------------------刘备上一章简单介绍了MySQL的多表连接查询(十九),如果没有看过,​​请观看上一章​​一.MySQL的子查询一.一子......
  • MySQL合并查询结果(二十一)
    勿以恶小而为之,勿以善小而不为--------------------------刘备上一章简单介绍了MySQL的子查询(二十),如果没有看过,​​请观看上一章​​一.合并查询结果多条sql查询语句......
  • MySQL的索引(二十三)
    勿以恶小而为之,勿以善小而不为--------------------------刘备上一章简单介绍了MySQL的视图(二十二),如果没有看过,​​请观看上一章​​一.索引一.一索引的产生前面已经......