Kettle实现从mysql中取2张表数据关联的数据,并写入到mongodb中
1 建立转换,并设置DB连接到mysql
选中DB连接:连接类型选择MySQL,输入主机名称,数据库名称,端口号,用户名,密码
输入连接名称,点击确定。(可以先点击测试,测试一下是否连接成功)
如下图:

2 选择输入》表输入,拖动到主面板中,双击进行设置
(1)输入步骤名称;选择数据库连接
如下图:

(2)点击获取SQL查询语句按钮,选择对应的表t_bulo_storage_collect_201808
如下图:

(3)根据实际情况增加where之后的查询条件,然后点击确定,完成此表输入的全部设置。如下图:

3 按照步骤2的方法,再建立一个表输入,名称为t_bulo_storage_info
具体sql如图:

4 分别将两个表进行排序
使用转换》排序记录 组件,如果不使用该组件,就在步骤2 3中的sql语句中使用order by进行排序。
关于排序的使用具体可以参考另外一篇文章:https://www.cnblogs.com/kxm87/p/9600098.html
排序如图:


5 将两个排序结果集进行连接
使用连接》记录集连接 组件
选择第一个步骤,第二个步骤,连接类型,和连接字段
具体设置如下图:

6 将步骤5中的连接结果写入到mongodb中
使用Big Data》MongoDB Oupt 组件
具体设置如下:




Kettle实现从mysql中取2张表数据关联的数据,并写入到mongodb中的更多相关文章
- Mysql两张表的关联字段不一致
工作中遇到了一个问题,邮件系统群发失败,后来经过排查查找到了原因 原来是因为mysql中的两张表的关联字段竟然不一致, 表A mysql> desc rm_user_router;+------ ...
- 通过JSP网页连接MySQL数据库,从MySQL数据库中读出一张表并显示在JSP网页中
1.安装所需软件 ①安装java和tomcat,建立JSP网页最基础的软件②安装MySQL数据库(下载地址:https://www.mysql.com/)③安装Navicat Premium来查看数据 ...
- mysql 和 sqlserver中备份一张表的区别
sqlserver中备份一张表 SELECT * into qa_buglist_bak FROM qa_buglist 不管表的数据有多大,速度很快: mysql中上述语句就无效了,须得新建一张表, ...
- mysql创建某个数据库中的某张表 只读用户
1.创建用户,并授权SELECT查询权限,授权远程访问权限,注意,命令中username/password指用户名密码,请自己指定.若要限制仅指定IP可以使用此用户访问Mysql,将%改为具IP即可, ...
- mysql查询在一张表不在另外一张表的记录
mysql查询在一张表不在另外一张表的记录 问题: 查询一个表(tb1)的字段记录不在另一个表(tb2)中 条件:tb1的字段key的值不在tbl2表中 -------- ...
- MySQL将一张表的某些列数据,复制到另外一张表,并且修改某些内容
MySQL将一张表的某些列数据,复制到另外一张表 INSERT INTO t_topic_content(content,topicId) SELECT content,id FROM t_topi ...
- Oracle中把一张表查询结果插入到另一张表中
1. 新增一个表,通过另一个表的结构和数据 create table XTHAME.tab1 as select * from DSKNOW.COMBDVERSION 2. 如果表存在: inse ...
- [转载]详解网络传输中的三张表,MAC地址表、ARP缓存表以及路由表
[转载]详解网络传输中的三张表,MAC地址表.ARP缓存表以及路由表 虽然学过了计算机网络,但是这部分还是有点乱.正好在网上看到了一篇文章,讲的很透彻,转载过来康康. 本文出自 "邓奇的Bl ...
- 多张表进行关联查询---->删除某个数据的时候出现还有子记录的提示
多张表进行关联查询的时候,当某张表里面的一个字段在另外一张表有定义,就相当于一张表是另外一张表的子表:比如现在开发所遇到的一个问题: 这个是在删除sys_user表的里面的数据的时候出现的问题,因为s ...
随机推荐
- vim技巧总结
自动补齐CTRL+N/CTRL+P vim 自动补全 颜色设置 hi Pmenu ctermfg=black ctermbg=gray guibg=#444444 hi PmenuSel ctermf ...
- CentOS7 - Package does not match intended download 问题解决
yum 安装软件,有时会出现 Error: Package does not match intended download,这时需要彻底清除已有的下载,然后重新安装即可. $ sudo yum cl ...
- shell脚本中case /*的作用
如下语句 case $0 in /*) ;; *) ;; /*在这里的作用就是绝对路径的意思
- Mysql判断是否某个字符串在某字符串字段的4种方法
方法一:like SELECT * FROM 表名 WHERE 字段名 like "%字符%"; 方法二:find_in_set() 利用mysql 字符串函数 find_in_s ...
- JAVA日期格式转换---让人不得不说的故事
链接:https://my.oschina.net/xinxingegeya/blog/394821 这是给我自己参考的,大家不惜勿喷 1.举例使用 2.各种作用 3.坑(默认中文日期,加上这个就是英 ...
- whoami/who/w/last/lastlog/users/finger
whoami 显示当前有效的用户名称,相当于执行id -un命令 who 显示目前登录系统的用户信息 w 显示已经登陆系统的用户列表,并显示用户正在执行的指令 last 显示登入系统的用户 lastl ...
- Hibernate 5 升级后 getProperties 错误
升级到 Hibernate 5 后,提示有错误: org.hibernate.engine.spi.SessionFactoryImplementor.getProperties()Ljava/uti ...
- 2017.9.23 NOIP2017 金秋杯系列模拟赛 day1 T1
回形遍历( calc .cpp/c/pas) 时间限制:1s内存 限制: 256MB [问题 描 述] 给出一个 n*m 的棋盘,按如下方式遍历,请问(x,y)往后 z 步走到的是哪个格子. [输入] ...
- c 判断一个字符是否为空格
#include <stdio.h> #include <wctype.h> int main () { wchar_t c; ; wchar_t str[] = L" ...
- CF1208 Red Blue Tree
题目链接 问题分析 这是蒟蒻第一道3500!不过话说luogu上两个题解的程序都是假的可还行(2019.11.1)-- 为了方便叙述,下面我们约定 : \([c]\) 的值为 \(1\) 当且仅当 \ ...