上一篇主要測試大家的SQL基礎(chǔ)語法掌握,這一回測試下大家函數(shù)的掌握情況。
常用函數(shù)
1.求 -10 和 9 的絕對值
考察:abs()
2.將 -1.4 、2.6的四舍五入值保留整數(shù)
考察:round(x)
3.將 3.474、-1.875 四舍五入保留2位小數(shù)
考察:round(x,d)
4.求 'abc'、'love中國' 的字節(jié)長度和字符長度
考察:length()、char_length()
5.將 'abd'和'love中國'拼接到一起
考察:concat()
6.查看系統(tǒng)當(dāng)前的日期
考察:CURRENT_DATE,CURRENT_DATE()
7.求 日期'2018-03-07'往前28天是幾號
考察:str_to_date() 和 interval 和 date_add()
聚合函數(shù)
本次使用下面的表為例,學(xué)生成績表,根據(jù)問題描述,寫出SQL
CREATE TABLE `t_point_score` (
`score_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '成績ID',
`class_name` varchar(10) DEFAULT NULL COMMENT '班級名稱',
`student_no` int(11) DEFAULT NULL COMMENT '學(xué)號',
`student_name` varchar(10) DEFAULT NULL COMMENT '學(xué)生姓名',
`course_name` varchar(10) DEFAULT NULL COMMENT '課程名稱',
`score` int(11) DEFAULT NULL COMMENT '分?jǐn)?shù)',
PRIMARY KEY (`score_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

8.查詢t_point_score表中的總記錄數(shù)
考察:函數(shù) count()
9.查詢t_point_score表中學(xué)生人數(shù)
考察:函數(shù) count() 和 distinct
10.查詢t_point_score表中,每個班級的學(xué)生人數(shù)
考察:函數(shù) count() 和 distinct 和 group by
11.查詢t_point_score表中,每門課程的最低分和最高分
考察:函數(shù) min()、max() 和 group by
12.查詢t_point_score表中,每名學(xué)生的所有課程的平均分
考察:函數(shù)avg()
13.查詢出每個班級中,每門課程最高的學(xué)生的學(xué)號和姓名
考察:函數(shù)max() 和 子查詢
此題難度高些,考察了子查詢的使用