1

特定の顧客注文にすべてのアタッチメントを含むこのテーブルがあり、1 種類のアタッチメントのみを選択したいのですが、アタッチメントがなくても行を表示したいです。そうする方法はありますか?

私はこれを試しましたが、うまくいきません:

SELECT 
  Comm.No_Com, 
    CASE WHEN Attachement.EntityID IS NULL OR Attachement.ATS_CategoryOfAttachmentCode='DESSIN'
        THEN Attachement.FileName
        ELSE ' '
    END AS Dessin

    FROM Comm
    INNER JOIN Attachement
    ON Comm.COH_Id=Attachement.EntityID
4

1 に答える 1

2

INNER JOIN の代わりに LEFT OUTER JOIN を使用します。

SELECT 
    Comm.No_Com, 
    CASE WHEN Attachement.EntityID IS NULL OR Attachement.ATS_CategoryOfAttachmentCode='DESSIN'
        THEN Attachement.FileName
        ELSE ' '
    END AS Dessin
FROM Comm
LEFT OUTER JOIN Attachement
ON Comm.COH_Id=Attachement.EntityID AND Attachment.Kind = 'DesiredKind'
于 2013-07-08T19:01:37.563 に答える