【发布时间】:2020-01-30 10:07:17
【问题描述】:
我正在尝试加入表格。加入栏是合同号。我试图加入的表有多个合同号,每个合同号用逗号分隔(即Contract1,Contract2,Contract3)。
我尝试过使用LEFT CHARINDEX 和SUBSTRING CHARINDEX,但没有一个可以工作。
我尝试过的加入似乎不起作用:
SELECT *
FROM tblA AS C WITH (NOLOCK)
INNER JOIN tblB AS tmp WITH(NOLOCK)
ON CONVERT(VARCHAR, c.Contract_No) =
CONVERT(VARCHAR, LEFT(tmp.ContractNo, CHARINDEX('-', tmp.ContractNo) - 1))
【问题讨论】:
-
向我们展示一些示例表数据和预期结果 - 作为格式化文本,而不是图像。如果需要,请简化,minimal reproducible example。
-
永远不要将数据存储为逗号分隔值,这只会给您带来很多麻烦。
标签: sql sql-server string tsql join