sql >> データベース >  >> RDS >> Sqlserver

複数の一般的なテーブル式を結合する

    このクエリを試してください。おそらくこれがあなたが探しているものです。

    ;WITH cte AS
     (SELECT dbo.Cable.*, 
             row_number() over(partition by dbo.Cable.TagNo order by dbo.Cable.CableRevision desc) as rn
      FROM dbo.Cable 
      WHERE dbo.Cable.CableRevision = @CoreRevision
      ), cte2 AS
     (SELECT dbo.Cable.TagNo, dbo.Core.*, 
             row_number() over(partition by dbo.Core.CoreNo order by dbo.Core.CoreRevision desc) as rn
      FROM dbo.Core INNER JOIN dbo.Cable ON dbo.Cable.Id = dbo.Core.CableId
      WHERE dbo.Core.CoreRevision <= @CoreRevision
      )
      SELECT *
      FROM cte c FULL JOIN cte2 c2 ON c.TagNo = c2.TagNo
      WHERE c.rn = 1 OR c2.rn = 1
    


    1. php/mysqlがテーブルの行をカウントしない

    2. OracleのSEQUENCE.NEXTVALに相当するMySQL

    3. スレッディングと SqlFileStream。別のトランザクションで開かれているため、プロセスは指定されたファイルにアクセスできません

    4. 表領域に関するOracleのエクスポート/インポートの問題