【问题标题】:Can I join two tables on an Integer type column and the second with CSV我可以在整数类型列上加入两个表,第二个用 CSV 加入吗
【发布时间】:2020-11-01 20:09:02
【问题描述】:

我有两个表,必须加入的列是

表 1: 我必须加入的专栏

1
2
3
4
5

和 表2

Column 2
1,2,3
1,3,4
1,5
2,3,4

如何在这些列上连接两个表。

附: string_split 在这里没有用。

【问题讨论】:

  • 用您正在使用的数据库标记您的问题。

标签: sql csv split


【解决方案1】:

是的,你可以这样做。在标准 SQL 中,这看起来像:

select . . . 
from t1 join
     t2
     on ',' || t2.ids || ',' like '%,' || t1.id || ','%' ;

确切的语法可能取决于您使用的数据库。

但你不想。你想修复你的数据模型。 SQL 有一个很好的方法来存储匹配的 id 列表。它被称为一个表,每个匹配的 id 对都有一行。字符串是存储列表的错误方式,字符串是存储整数的错误方式。

【讨论】:

  • 谢谢,这很有用。但它不会采用第 2 列中的所有值,这只会出于一个原因创建一行。
  • @NitinPathak 。 . .嗯?这正是问题所要求的。它将第一个表中的值连接到第二个表中的所有元素。
猜你喜欢
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-23
  • 2023-02-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多