如何在talend中合并数据库表中的列



我的数据库中有一个包含地址的表。街道编号、单元编号、街道名称、街道方向和省份有单独的字段。我想将所有这些列合并为一个列,以便生成一个地址,然后将其与CSV数据文件中的传入地址进行比较。如果地址匹配,则为它们分配与数据库表中相应地址相同的地址id。

我是塔伦德的新手,我不知道如何解决这个问题。

我不认识塔伦德。

但是,创建一个视图(在数据库中(,根据需要显示地址,然后将视图的ADDRESS列与CSV文件进行比较,怎么样?类似这样的东西(大部分是盲目猜测,因为我不知道你提到的栏真正代表了什么(:

这是您当前拥有的表格:

SQL> select * from address;
STREET_NUMBER UNIT_NUMBER STREET_NAME STREE PROVINC
------------- ----------- ----------- ----- -------
1           2 Main street North Central
2           2 Zara street South West

创建视图;其CCD_ 2列格式应尽可能与CSV文件的值匹配。我可能没能做到这一点,但由于你没有提供任何样本数据,我希望这个想法本身将是一个很好的起点:

SQL> create or replace view v_address as
2    select street_number,
3           unit_number,
4           -- concatenate next 3 columns
5           street_name ||', '|| street_direction ||', '|| province as full_addres
6    from address;
View created.
SQL> select * From v_address;
STREET_NUMBER UNIT_NUMBER FULL_ADDRESS
------------- ----------- ---------------------------
1           2 Main street, North, Central
2           2 Zara street, South, West
SQL>

最后,将full_address和CSV文件的值进行比较。

最新更新