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系列文章

相关推荐
QCC产品中心3 小时前
MiniMax Agent 接入实测:企业查询、股权穿透与 UBO 识别(附 Prompt 模板)
大数据·mcp·金融/非金融
vivo互联网技术3 小时前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
数据技术说4 小时前
MySQL 迁移实战——如何实现真正的"零改造"平滑切换
mysql
倔强的石头_18 小时前
《Kingbase护城河》——猎捕慢查询:执行计划的微观解析与索引调优实战
数据库
SelectDB20 小时前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
ApacheSeaTunnel1 天前
当多表数据涌入,Apache SeaTunnel 如何巧妙化解主键冲突?
大数据·开源·数据集成·seatunnel·技术分享·数据同步
jiayou642 天前
KingbaseES 表级与列级加密完全指南
数据库·后端
GBASE3 天前
G术时刻 |GBase 8s数据库事务并发控制之封锁技术介绍(下)
数据库
xiezhr3 天前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
大大大大晴天4 天前
Hudi Metadata Table 与 Hive Sync (HMS)怎么选?
大数据