PostgreSQL:基于搜索的串联字符串联接表

时间:2018-07-16 17:46:30

标签: sql string postgresql join

我不确定如何编写一个从表1获取值的join子句,然后在表2中搜索一个字符串以查看它们是否匹配。听起来令人困惑?

这是我正在使用的实际示例。

表1

Customer_Id   Concat_Phone_Numbers
1                     8888888888;1111111111

表2

Caller         Callee      Calldate
1111111111     3333333333  1/1/1900

我想创建一个像这样的表:

所需表

Customer_Id  Calldate
1            1/1/1900

在编写join子句时我迷路了,因此要在表1第二列的整个列表中搜索匹配的电话号码/条目。

预先感谢您的帮助! (PS,这是我第一次问一个问题!)

编辑::

我现在在这里

Select 
* 
from table1
left join table2 
on ??????????????????

1 个答案:

答案 0 :(得分:1)

好!您应该修复数据结构。您确实需要一个表,每个客户和每个电话号码一行。您会明白为什么要关心性能。

但是,如果您坚持使用此数据模型,则可以使用字符串和/或数组操作进行联接。这是使用正则表达式的方法

SELECT salary
    FROM emptable
    WHERE salary < (SELECT max(salary)
                    FROM emptable)
    ORDER BY salary DESC
    LIMIT 1,1;