1

我在 SQL Server 中有 3 个表,Table1其中一列具有其他两个表的逗号分隔值。Table2Table3Table1PK

现在我想将列中的值分开,Table1并使用它根据找到的值从其他两个表中选择数据。

4

1 回答 1

0

尝试这个

Select Table1PkValue,Table2PKValue
From
(
    Select SubString(PKColumn, 0,CharIndex(PKColumn, ',')) As    
    Table1PkValue,SubString(PKColumn, 
    CharIndex(PKColumn,',')+1,Len(PKColumn)-CharIndex(PKColumn,',')+1) As Table2PKValue
    From Table1
 )
As T
INNER JOIN Table2 ON Table2.PkColumn=T.Table1PkValue
INNER JOIN Table3 ON Table3.PKColumn=T.Table2KValue

请注意,您的 PKColumn 的 Table1 应该有逗号分隔的值。表 2 中的第一个值和表 3 中的第二个值。

如果有任何语法错误,则忽略

于 2012-06-23T09:50:17.813 回答