0

我在使用 MS Access 时遇到问题。我有 boolean 和 Memo 类型字段,并且我正在使用聚合函数(Group by 等)。布尔值提供有关调查结果的信息,备忘录字段解释了该结果背后的原因。

我遇到了两个小问题,

  1. 我的布尔值显示为 0(未选中)和 -1(选中)
    我设法将它们恢复为复选框(稍微更明显它们是什么)但现在它们又回到了数字表达式,我不知道我做了什么.
  2. 我的备忘录/布尔字段在比较FIRST/LAST
    之前表现得很奇怪,当我按备忘录字段分组时,我有重复项,带有选中布尔复选框的那些首先出现,并与备忘录字段对齐。当我应用FIRST逻辑时,它显示重复项的“最后一个”,例如,两个“重复项”仅因布尔值和备忘录而异,FIRST显示重复项 2。如果我应用LAST逻辑,它显示重复项 1。

为了澄清,使用GROUP BY它时显示如下:

Name|Risk? |Memo
Bob |Tick  |Description one
Bob |Untick|Description two

And when selecting the risk and memo field to only display FIRST I got:

Name|Risk? |Memo
Bob |0     |Description two

这不是重复中的第一个!

所以我不得不问,聚合布尔值是如何显示的,为什么它们会被转换为 0/-1?以及如何使用FIRST/LAST逻辑对布尔值/备忘录字段进行排序?

4

1 回答 1

1

我不确定您在说什么,但零 (0) 在减一 (-1) 之前,所以否 (0) 将是第一个。至于改成0,-1,就不是,那是字段包含的,其他都是格式。如果您正在运行查询,则可以添加适合的格式:

 SELECT Format([ayesno],"Yes/No") FROM table

更多:格式属性 - 是/否数据类型

底角显示 Top 1,这是我怀疑你想要的。

sSQL = "SELECT t.Comment, t.TickThis " _
& "FROM Table2 t " _
& "WHERE t.ID IN ( " _
& "SELECT Top 1 ID FROM Table2 t2 " _
& "WHERE t2.Comment=t1.Comment " _
& "ORDER BY t2.TickThis Desc, t2.Comment) "

最后,最小值,最大值

于 2012-08-30T09:35:38.310 回答