clickhouse与Mysql交互关联查询

Posted TGB-Earnest

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了clickhouse与Mysql交互关联查询相关的知识,希望对你有一定的参考价值。

一、描述

需要到一个报表,直接在clickhouse客户端,但是需要多个表进行关联,主表是在clickhouse里面,其他表有的在mysql中,其中想了个办法,单独写个程序直接关联,但是会很费时间,后来在官网直接找到了相关的方法即可。

二、 解决方法


具体语句

mysql(#ip, #database, 'tbl_iplat_othernet_group_dev_data', #username, #password)

如果有端口再加上ip:port即可

SELECT
	t2.dev_name,
	t2.display_name,
	t1.rx,
	t1.tx 
FROM
	(
	SELECT
		devId,
		optical_index,
		avg( rx_power ) rx,
		avg( tx_power ) tx 
	FROM1 
	WHERE
		( rsdate = '2023-01-09' ) 
		AND ( datestr < '2023-01-09 00:10:00' ) 
	GROUP BY
		devId,
		optical_index 
	) AS t1
	INNER JOIN (
	SELECT
		a.dev_name,
		a.display_name,
		a.optical_index,
		b.dev_id AS dev_id 
	FROM
		(
		SELECT
			* 
		FROM
		mysql ( 'IP:port', '库名', '表2', 'username', 'password' )) AS a
		LEFT JOIN (
		SELECT
			* 
		FROM
		mysql ( 'IP:port', '库名', '表2', 'username', 'password' )) AS b ON a.dev_id = b.dev_id 
	WHERE
		b.prov_aid = 114 
		) AS t2 ON (
	toString ( t1.devId ) = toString ( t2.dev_id )) 
	AND (
	toString ( t1.optical_index ) = toString ( t2.optical_index ))

三、注意事项

如果密码是用$等特殊符号记得加转义符\\

以上是关于clickhouse与Mysql交互关联查询的主要内容,如果未能解决你的问题,请参考以下文章

clickhouse与Mysql交互关联查询

火山引擎:ClickHouse增强计划之“多表关联查询”

火山引擎:ClickHouse增强计划之“多表关联查询”

火山引擎:ClickHouse增强计划之“多表关联查询”

ClickHouse入门介绍与其特性

15_clickhouse,MySQL引擎;MySQL和ClickHouse中数据类型的对应关系