我有以下查询:SQL - 加入问题
SELECT rt.ID, rt.Name, rt.Rate, rt.Colour, vtb.ID AS 'vtbID', vtb.Value, rt.StdID
FROM Rates AS rt
LEFT OUTER JOIN VehicleTypeCostsBreakdown AS vtb ON rt.ID = vtb.RateID
LEFT OUTER JOIN VehicleTypeCostsDepots AS vtd ON vtd.ID = vtb.VehicleTypeDepotID AND vtd.DepotID = @DepotID AND vtd.VehicleTypeID = @VehicleTypeID
基本上,我想选择从价格表中的所有“变化率”,但如果以一个速度的任何引用存在于“VTD”表,该表具有匹配@DepotID和@VehicleTypeID的参数,我想为此返回值。如果它没有任何引用,我希望它的'vtb.Value'选择是空白的。
使用上面的SQL,它似乎总是返回'vtb.Value'值的值,即使参数为空。我错过了什么吗?
当你说你总是得到vtb.Value返回值即使参数为null,是vtb.Value返回为NULL,或者你得到的实际值? –