简单sql语句书写,数据库大神帮帮忙

1、有一个表table,有一个字段Id,可能有多个重复的值,请用一条sql语句来统计Id个数大于3的查询
2、有一个表table,里面有三个字段,语文、数学、英语,按以下条件显示
大于等于80分优秀,大于等于60及格,小于60不及格。
显示格式:
语文 数学 英语
及格 及格 及格

1、select count(ID),ID from tab group by id having(count(id))>3

select count(id) from table where id > 3

2、select (case when 数学>80 then '优秀' WHEN 数学>60 then '及格' else '不及格' end) from tab

简单呀,首先建表,具体百度一下打把的别人写的

@ Anne_liusha
mysql> select * from test1;
+--------+--------+--------+
| 语文 | 数学 | 英语 |
+--------+--------+--------+
| 36 | 89 | 50 |
| 36 | 89 | 50 |
| 36 | 89 | 50 |
| 36 | 89 | 50 |
+--------+--------+--------+
4 rows in set (0.00 sec)

select (case when 数学>80 then '优秀' WHEN 数学>60 then '及格' when '数学' < 60 then '不及格' when 语文>80 then '优秀' WHEN 语文>60 then '及格' when '语文' < 60 then '不及格' when 英语>80 then '优秀' WHEN 英语>60 then '及格' when '英语' < 60 then '不及格' end) from
test1;

-------------------+
| 优秀

               |

| 优秀

               |

| 优秀

               |

| 优秀

               |

+-------------------------------------------------------------------------


-------------------+
4 rows in set (0.00 sec)
不太符合要求啊

人家说的没有错,你弄错了,应该是这样的!
select (case when 数学>80 then '优秀' WHEN 数学>60 then '及格' when '数学' < 60 then '不及格' end) as 数学 ,(case when 语文>80 then '优秀' WHEN 语文>60 then '及格' when '语文' < 60 then '不及格' end) as 语文,(case when 英语>80 then '优秀' WHEN 英语>60 then '及格' when '英语' < 60 then '不及格' end) as 英语 from test1;

非常感谢 Anne_liusha”和 天上下雨 俩位大神的帮忙,Anne_liusha先回答,我就采纳他的了