【问题标题】:Access 2007 Male, Female, Unisex Categories for either Gender访问 2007 年男性、女性、男女通用类别的任一性别
【发布时间】:2013-01-03 02:00:54
【问题描述】:

我是 Access 2007 的新手。我是一名 ERP 功能顾问,几乎没有编程经验。

我正在设置一个供个人使用的 Access 数据库。假设我有男性、女性、男女皆宜的产品类别。我有黑色和白色的产品颜色。输入订单时,我选择一种颜色(组合框),即黑色,然后选择性别(组合框),即男性。在订单中,性别可以是男性也可以是女性,但不能男女皆宜。

在产品 ID 字段(组合框)中,我需要查看具有男性和中性性别的黑色项目。

当我在产品 ID 组合中设置查询时,OR 运算符位于 AND 运算符之前,然后我也看到了白色项目。结果,我看到了所有男性和中性物品。

可以这么说,我找不到将 OR 运算符放在 AND 运算符中的方法。

我改变了方法,不再将男性、女性、中性放在一个字段中,而是创建了两个复选框字段,男性和女性。这次我尝试查询 Products.Male=True if GenderCombo=Male, Products.Female=True if GenderCombo=Female 连同颜色但没有运气。

您推荐哪种方法以及查询应该是什么样的。

提前感谢您的帮助。

贝基尔。

【问题讨论】:

  • 为什么所有的反对票?这不是一个好问题,但比一些问题要好。

标签: ms-access ms-access-2007


【解决方案1】:

检查您的查询脚本,并注意 AND 的优先级高于 OR。您必须使用方括号才能得到您想要的。

示例:

where productcolor = 'Black' and gender = 'Unisex' or gender = 'Male' 

这将为您提供所有黑色中性和所有男性的任何颜色。

你想要的大概是:

where productcolor = 'Black' and (gender = 'Unisex' or gender = 'Male')

你也可以这样写:

where productcolor = 'Black' and gender in ('Unisex', 'Male')

【讨论】:

  • 非常感谢您的回答。我试过你所说的,之前使用内括号。不知何故,它没有用。我删除了该字段并重新创建它并再次尝试,它现在可以工作了。也许我当时省略了一些东西。休息有时可能有用:) 再次感谢。
猜你喜欢
  • 2020-03-09
  • 1970-01-01
  • 2011-03-04
  • 2017-04-13
  • 1970-01-01
  • 1970-01-01
  • 2016-09-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多