Wiky's Blog

数据库MySQL总结

说起来真是惭愧了,学了一个学期的数据库,对数据库的题目大大小小也写过一些了;然而在昨天的面试里面,
却在面对一道自己似曾相识的题目的时候,跟那个面试官出现了比较大的分歧;题目的需求大概是这样的:

| No | Point | Day |
| ——– | —–: | :—-: |
| 001 | -1 | 2010-02-01 |
| 002 | 0 | 2010-02-03 |
| 003 | -2 | 2010-02-03 |
| 004 | -4 | 2010-02-05 |
| 005 | 0 | 2010-02-05 |
| 006 | -5 | 2010-02-07 |

给定上面的表格,其中得分为正的算通过,然后需要你去统计每天通过与不通过的人数,以天为行列出;
了解了count和if函数的使用之后,写出了如下的解决方案:

1
2
3
4
SELECT date,COUNT(IF(point>=60,1,NULL)) AS "成功通过人数",
COUNT(IF(point<60,1,NULL)) AS "失败人数"
FROM mytest GROUP BY date;

热评文章