查询优化多对多

时间:2016-04-04 20:09:05

标签: sql sql-server query-optimization

我有一些这样的数据:

  1. home 1

    1.record 1

    2.record 2

    3.record 3

  2. home 2

    1.record 2_1

    2.record 2_2

  3. home 3

    1.record 3_1

  4. 我有三个表标识和identityField以及IdentityFieldValue

    [sqlServer 2012]
    
    identity 
      identityId
    
    identityField 
      identityFieldid
    
    IdentityFieldValue
       identityId
       identityFieldid
       value
    

    如何使用一个查询获取记录并使用两个for循环???

    for(home in homes)
    {
       for(field in home.fields)
       {
       }
    }
    

1 个答案:

答案 0 :(得分:1)

如果您提供的数据量有限,很难知道您在寻找什么,这是您需要的吗?

SELECT *
FROM identity ID

INNER JOIN IdentityFieldValue IFLV
ON IFLV.identityId = ID.identityId

INNER JOIN identityField IFL
ON IFL.identityFieldid = IFLV.identityFieldid
相关问题