ClickHouse(23)ClickHouse集成Mysql表引擎详细解析

MySQL表引擎

MySQL引擎可以对存在远程MySQL服务器上的数据执行SELECT查询。

调用格式:

复制代码
MySQL('host:port', 'database', 'table', 'user', 'password'[, replace_query, 'on_duplicate_clause']);

调用参数

  • host:port --- MySQL 服务器地址。
  • database --- 数据库的名称。
  • table --- 表名称。
  • user --- 数据库用户。
  • password --- 用户密码。
  • replace_query --- 将 INSERT INTO 查询是否替换为 REPLACE INTO 的标志。如果 replace_query=1,则替换查询
  • 'on_duplicate_clause' --- 将 ON DUPLICATE KEY UPDATE 'on_duplicate_clause' 表达式添加到 INSERT 查询语句中。例如:impression = VALUES(impression) + impression。如果需要指定 'on_duplicate_clause',则需要设置 replace_query=0。如果同时设置 replace_query = 1'on_duplicate_clause',则会抛出异常。

此时,简单的WHERE子句(例如 =, !=, >, >=, <, <=)是在MySQL服务器上执行。

其余条件以及LIMIT采样约束语句仅在对MySQL的查询完成后才在ClickHouse中执行。

MySQL引擎不支持NULL值,因此,当从MySQL表中读取数据时,NULL将转换为指定列类型的默认值(通常为0或空字符串)。

实例

sql 复制代码
select * 
from  MySQL('host:port', 'database', 'table', 'user', 'password'[, replace_query, 'on_duplicate_clause'])
limit 1000;

资料分享

ClickHouse经典中文文档分享

系列文章

clickhouse系列文章

相关推荐
SelectDB3 分钟前
Doris 直查 Paimon 索引:快手湖上向量检索的共建与落地
大数据·数据库·数据分析
风123456789~4 分钟前
【Oracle专栏】全局 && 本地复合索引 实验
数据库·oracle
1314lay_10075 分钟前
通过Sql Server创建EXCEL文件:master..xp_cmdshell
数据库·excel
龙亘川20 分钟前
科技决策分析报表平台:科技服务・项目・成果转化・政策四维报表全链路业务建模
大数据·科技·ai·信息可视化·智慧城市
zzzll11111 小时前
用 DeepSeek Harness 手搓一个自己的 Agent
数据库
名字还没想好☜1 小时前
Spring @EventListener 事件驱动解耦实战:同步转异步、事务绑定与顺序控制
java·数据库·后端·python·spring
del1 小时前
第十周技术博客
数据库
1314lay_10071 小时前
C#调用Sql Server存储过程,并且使用传入表结构
数据库·经验分享·笔记·sqlserver·c#
anxiao_m2 小时前
2026大文件传输软件推荐,从速度安全多维度客观测评
数据库·文件传输·传输
IT大白鼠2 小时前
MySQL 分布式集群系列 · 第八篇(收官)——NDB 集群面试高频题 +架构总结与未来演进
分布式·mysql·面试