我有一个MS Access数据库,它有一个多标准查找字段,其条目如下:
ID Names
1 Carl, Daniel
2 Natalia
3 Carl, Natalia
4 Natalia, Carl
5 Carl
6 Natalia
7 Bob
8 Bob
9 Bob, Natalia
我想编写一个只会产生以下结果的查询:
2 Natalia
6 Natalia
我尝试了这段代码并且无法正常工作:
WHERE (((Table.Name)="Natalia"));
这提供了包括Natalia的所有实例:
2 Natalia
3 Carl, Natalia
4 Natalia, Carl
6 Natalia
9 Bob, Natalia
非常感谢你的帮助。
答案 0 :(得分:0)
首先,您不应该将列表存储为已分隔的字符串。正确的方法是连接表,每个名称一行。
其次,您的WHERE
子句(列名已修复)应该符合您的要求:
WHERE Names = "Natalia"
如果您想要所有其他行,请使用LIKE
:
WHERE Names LIKE "*Natalia*"
答案 1 :(得分:0)
我用以下代码行解决了这个问题:
HAVING (((Names)="Natalia") AND ((Count(Staffers))=1));