select SerialNumber,
max (case when df.Description='ActualWeight' then PD.Content else '' end) as ActualWeight,
max (case when df.Description='DeliveryID' then PD.Content else '' end) as DeliveryID,
max (case when df.Description='Dimension' then PD.Content else '' end) as Dimension,
max(case when df.Description='PONUMBER' then PD.Content else '' end) as PONUMBER
from dbo.ffPackage P
inner join dbo.ffPackageDetail PD on PD.PackageID = P.ID
inner join dbo.luPackageDetailDef DF on DF.ID = PD.PackageDetailDefID
where pd.PackageDetailDefID in('4','6','8','11') group by p.SerialNumber