【发布时间】:2015-06-07 00:58:41
【问题描述】:
我有两张桌子:
Name Forename CostCentre
Max Meier 11111
Paul Peters 22222
Kai Green 11111
CostCentre departmentCostCentre
11111 HR
22222 IT
除此之外,我还有一个搜索字段和一个成本中心组合框。
如果我在搜索字段中输入“a”并在成本中心输入“11111”,我将获得所有记录...
但我只想得到 Max 和 Kai。这是我的 SQL 语句:
SELECT tbl_Employee.Name, tbl_Employee.Forename, tbl_Employee.CostCentre, tbl_Department.Department
FROM tbl_DepartmentINNER JOIN tbl_EmployeeON tbl_Department.CostCentre= tbl_Employee.CostCentre
WHERE tbl_Employee.Name Like "*a*" OR tbl_Employee.Forename Like "*a*"AND tbl_Mitarbeiter.CostCentre=44444;
我真的不知道错误在哪里......如果我删除名称或名字条件它工作正常,但我得到奇怪的结果......
【问题讨论】:
-
在您的示例中,它们三个都有包含
a的Names,因此应该返回所有三个。话虽如此,您的示例数据似乎是错误的(forename列中的值看起来不像名字)。
标签: sql ms-access inner-join