問74
頻出度★★☆
“気温”表の2011年の7月1日から8月31日までの間で,最高気温が35度以上のレコードを全て抽出したい。抽出条件として,適切なものはどれか。 気温
| 年 | 月 | 日 | 最高気温 |
|---|---|---|---|
| 2011 | 1 | 1 | 12 |
| 2011 | 1 | 2 | 11 |
| 2011 | 1 | 3 | 9 |
| : | : | : | : |
| 2011 | 7 | 31 | 34 |
| 2011 | 8 | 1 | 36 |
| : | : | : | : |
| 2011 | 12 | 31 | 10 |
| 2012 | 1 | 1 | 11 |
这道题的解析和你的作答记录。
“気温”表の2011年の7月1日から8月31日までの間で,最高気温が35度以上のレコードを全て抽出したい。抽出条件として,適切なものはどれか。 気温
| 年 | 月 | 日 | 最高気温 |
|---|---|---|---|
| 2011 | 1 | 1 | 12 |
| 2011 | 1 | 2 | 11 |
| 2011 | 1 | 3 | 9 |
| : | : | : | : |
| 2011 | 7 | 31 | 34 |
| 2011 | 8 | 1 | 36 |
| : | : | : | : |
| 2011 | 12 | 31 | 10 |
| 2012 | 1 | 1 | 11 |
月份条件为 (月 = 7 and 月 = 8),而一条记录的月份不可能同时既是7又是8,因此括号内始终为假,一条记录也抽取不到。此外 最高气温 ≦ 35 表示「35度以下」,与所求的「35度以上」方向相反。两处均错。
最高气温 ≧ 35 是正确的,但月份条件为 (月 = 7 and 月 = 8),用了 and,同时既是7月又是8月的记录并不存在,因此结果为空。要取到7月和8月这两类,需要用 or。
月份条件 (月 = 7 or 月 = 8) 是正确的,但 最高气温 ≦ 35 表示「35度以下」,与所求的「35度以上」相反,会取到低温一侧的记录。
正解 想要抽取的是同时满足「2011年」「7月1日~8月31日」「最高气温在35度以上」这三个条件的记录。选项 エ 为 年 = 2011 and (月 = 7 or 月 = 8) and 最高气温 ≧ 35,正确地表达了这三个条件。关键在于对月份的指定:每条记录的月份只有一个取值,因此要同时取到7月和8月两类记录,必须用 or 连接为「月 = 7 或 月 = 8」。另外「35度以上」表示包含35并向上,所以 最高气温 ≧ 35 是正确的。因此 エ 恰当。