一句SQL查詢沒門課程都低於80分的學生信息

#建表  T

CREATE TABLE T (
   NAME VARCHAR(200),
   kecheng VARCHAR(200),
   fenshu INT  
 )

#導入數據
name   kecheng    fenshu 
張三     語文     81
張三     數學     75
李四     語文     76
李四     數學     90
王五     語文     81
王五     數學     100
王五     英語     90

# 查詢沒門課程大於80分的學生信息

#逆向思惟方式

SELECT name
FROM t
GROUP BY name
Having MIN(fenshu)>=80

#正常方式 SELECT DISTINCT name FROM t WHERE name not in( SELECT Distinct name FROM t WHERE fenshu <80)

#一句SQL查出全部課程成績最高和最低的學生及其分數

SELECT "最高分",t.*  
FROM t ,(SELECT MAX(fenshu) AS fenshu,`kecheng` FROM t GROUP BY `kecheng`)b  
WHERE t.`fenshu` = b.fenshu  
AND t.`kecheng` = b.kecheng  
UNION  
SELECT "最低分",t.*  
FROM t ,(SELECT MIN(fenshu) AS fenshu,`kecheng` FROM t GROUP BY `kecheng`)b  
WHERE t.`fenshu` = b.fenshu  
AND t.`kecheng` = b.kecheng; 

  

#求平均分數,總成績

SELECT NAME ,SUM(fenshu),AVG(fenshu)
FROM t 
GROUP BY kecheng

  

參考連接:http://blog.csdn.net/caiandyong/article/details/52383923html

                  http://www.cnblogs.com/hongyan5682/p/4816444.htmljava

       歡迎評論交流。感謝分享!!!.net

相關文章
相關標籤/搜索