是否可以通过where语句放置大小写或合并以检查值是否为null?在下面的示例中,如果工资表为空,则该查询将不起作用。
@EmployeeID varchar (10)
AS
BEGIN
SELECT
Employee.FirstName, HRTable.Social, PayrollTable.Sallary
FROM
Employee AS Employee
LEFT JOIN
HRTable AS HRTable ON Employee.ID = HRTable.ID
LEFT JOIN
PayrollTable AS PayrollTable ON PayrollTable.ID = HRTable.ID
WHERE
(Employee.ID = @EmployeeID)
AND (PayrollTable.ID = @EmployeeID)
END
这是我需要说的:
WHERE
(Employee.ID = @EmployeeID AND IF PayrollTable.ID IS NOT NULL THEN
PayrollTable.ID = @EmployeeID)
当然是行不通的,所以我假设应该使用CASE或Coalesce,但是由于SELECT语句中不需要它,因此我不确定如何使用它。
答案 0 :(得分:0)
可以肯定,您可以将这些简化为一些类似的内容。请注意,并非所有内容都塞在左侧,因此更容易看到正在发生的情况。别名消除了打字的麻烦,并使阅读更容易。
WideCharToMultiByte()