SQL Server 2005 通过 C# (VS 20015)。知道为什么 WHERE
不起作用吗?
SQL语句为:
SELECT
AA003Employee.idEmployee,
AA001Person.LastName, AA001Person.FirstName,
AA017JobTitle.JobTitle, AA017JobTitle.Department,
AA003Employee.Disabled
FROM
AA003Employee
JOIN
AA001Person ON AA003Employee.idPerson = AA001Person.idPerson
JOIN
AA017JobTitle ON AA003Employee.idJobTitle = AA017JobTitle.idJobTitle
ORDER BY
AA001Person.LastName ASC, AA001Person.FirstName ASC,
AA017JobTitle.JobTitle ASC
WHERE
AA003Employee.Disabled = 'N';
尝试过:
省略时工作正常 ->
WHERE AA003Employee.Disabled = 'N'
当我尝试将其替换为 -> "...
WHERE Disabled = 'N'";
时抛出错误
错误截图如下:
最佳答案
您的问题是 WHERE
子句的位置。 SQL 关心语句中子句的顺序。但是你也应该学会使用表别名:
SELECT e.idEmployee, p.LastName, p.FirstName, jt.JobTitle, jt.Department, e.Disabled
FROM AA003Employee e JOIN
AA001Person p
ON e.idPerson = p.idPerson JOIN
AA017JobTitle jt
ON e.idJobTitle = jt.idJobTitle
WHERE e.Disabled = 'N'
ORDER BY p.LastName ASC, p.FirstName ASC, jt.JobTitle ASC;
看到了吗?查询更容易编写和阅读。
关于c# - WHERE 上的 SQL Server 查询错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47585651/