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

相关推荐
xcLeigh22 分钟前
基于 IoT-benchmark 的时序数据库性能测试实战:从安装到结果分析
数据库·物联网·性能测试·时序数据库·iotdb
SmartBrain41 分钟前
FastAPI实战:基于 SQLAlchemy的后端接口开发流程
数据库·架构·fastapi
@@神农1 小时前
PostgreSQL- SQL语句的执行过程(二)
数据库·sql·postgresql
_codemonster1 小时前
MySQL驱动(8.x版本)和MySQL驱动(5.x版本)区别
数据库·mysql
Dr.AE1 小时前
AI+政务 行业分析报告
大数据·人工智能·政务
BHXDML1 小时前
操作系统实验:(七)动态分区分配方式的模拟
开发语言·数据库·操作系统
LaughingZhu1 小时前
Product Hunt 每日热榜 | 2026-02-19
数据库·人工智能·经验分享·神经网络·chatgpt
秋氘渔1 小时前
Django事务机制详解:确保数据一致性
数据库
Howie Zphile2 小时前
# 组织增熵与全面预算管理的持续优化
java·大数据·数据库
清水白石0082 小时前
从频繁“握手”到高效通行:Python 数据库连接池深度解析与调优实战
开发语言·数据库·python