欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MYSQL如何查詢成績?yōu)榍?名的學(xué)生

 更新時間:2023年11月28日 09:20:21   作者:晚風(fēng)吹兒  
這篇文章主要介紹了MYSQL如何查詢成績?yōu)榍?名的學(xué)生問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

需求:查詢成績?yōu)榍?名的學(xué)生

拿到需求后,先對需求進(jìn)行分析,找出篩選的條件

Mysql查詢

1、最基本的查詢

select * from table where name="panpan"

2、查前5名

在mysql中篩選數(shù)據(jù)的前幾名,可以用關(guān)鍵字:limit

select * from table where name="panpan" limit 1

說明:查詢表中名為panpan的第一條記錄

3、以什么條件進(jìn)行篩選,需求是以成績進(jìn)行篩選,則可以用order by 排序篩選

select * from table order by grade

查詢應(yīng)用

合并后查詢:

select * from score order by grade limit 5

說明:查詢到score表里的grade ,以grade篩選,提取出前5條記錄

查詢成績最高和最低的人

簡單描述

成績表中有學(xué)生姓名、學(xué)生科目以及學(xué)生分?jǐn)?shù)。查詢分?jǐn)?shù)最高和分?jǐn)?shù)最低的學(xué)生的以及學(xué)生的分?jǐn)?shù)。注意的點如下:

1、group by,select 選擇的列,必須是group by 中的列,或者是函數(shù)形式。

2、利用MAX() 和MIN()sql函數(shù)。

3、建立的表結(jié)構(gòu)如下。

-- ----------------------------
-- Table structure for grade
-- ----------------------------
DROP TABLE IF EXISTS `grade`;
CREATE TABLE `grade` (
  `stu_name` varchar(255) NOT NULL,
  `stu_subject` varchar(255) NOT NULL,
  `score` int(255) DEFAULT NULL,
  PRIMARY KEY (`stu_subject`,`stu_name`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- ----------------------------
-- Records of grade
-- ----------------------------
INSERT INTO `grade` VALUES ('lilei', 'shuxue', '99');
INSERT INTO `grade` VALUES ('xiaoyong', 'shuxue', '66');
INSERT INTO `grade` VALUES ('lilei', 'yingyu', '80');
INSERT INTO `grade` VALUES ('xiaoyong', 'yingyu', '55');
INSERT INTO `grade` VALUES ('lilei', 'yuwen', '78');
INSERT INTO `grade` VALUES ('xiaoyong', 'yuwen', '88');

思路

1) 按照科目分組查詢成績最高的人

SELECT grade.stu_subject, MAX(grade.score) as score from grade GROUP BY stu_subject;

2) 顯示出成績最高的人的姓名和科目名稱

SELECT grade.* from grade,
(SELECT grade.stu_subject, MAX(grade.score) as score from grade GROUP BY stu_subject )b
WHERE grade.score = b.score and grade.stu_subject = b.stu_subject;

3) 顯示出列標(biāo)題.

SELECT “成績最高”,grade.* from grade,
(SELECT grade.stu_subject, MAX(grade.score) as score from grade GROUP BY stu_subject )b
WHERE grade.score = b.score and grade.stu_subject = b.stu_subject;

成績最低的也是如此就是利用MIN()函數(shù), 如果需要同時查出, 可以用union 如下sql

SELECT "成績最高",grade.* from grade, 
(SELECT  grade.stu_subject, MAX(grade.score) as score  from grade GROUP BY  stu_subject  )b
WHERE grade.score = b.score and grade.stu_subject = b.stu_subject
UNION
SELECT "成績最低",grade.* from grade, 
(SELECT  grade.stu_subject, MIN(grade.score) as score  from grade GROUP BY  stu_subject  )b
WHERE grade.score = b.score and grade.stu_subject = b.stu_subject;

查詢結(jié)果如下圖所示:

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Navicat Premiun遠(yuǎn)程連接MySQL報錯10038解決方案

    Navicat Premiun遠(yuǎn)程連接MySQL報錯10038解決方案

    這篇文章主要介紹了Navicat Premiun遠(yuǎn)程連接MySQL報錯10038解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • Mysql常見的慢查詢優(yōu)化方式總結(jié)

    Mysql常見的慢查詢優(yōu)化方式總結(jié)

    優(yōu)化是一項復(fù)雜的任務(wù),因為它最終需要對整個系統(tǒng)的理解,下面這篇文章主要給大家總結(jié)介紹了關(guān)于Mysql常見的慢查詢優(yōu)化方式,文中介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • SQL實現(xiàn)LeetCode(175.聯(lián)合兩表)

    SQL實現(xiàn)LeetCode(175.聯(lián)合兩表)

    這篇文章主要介紹了SQL實現(xiàn)LeetCode(175.聯(lián)合兩表),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 詳解MySQL數(shù)據(jù)庫、表與完整性約束的定義(Create)

    詳解MySQL數(shù)據(jù)庫、表與完整性約束的定義(Create)

    這篇文章主要介紹了MySQL數(shù)據(jù)庫、表與完整性約束的定義(Create),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2025-04-04
  • 通過代碼實例了解頁面置換算法原理

    通過代碼實例了解頁面置換算法原理

    這篇文章主要介紹了通過代碼實例了解頁面置換算法原理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-08-08
  • 面試被問select......for update會鎖表還是鎖行

    面試被問select......for update會鎖表還是鎖行

    select … for update 是我們常用的對行加鎖的一種方式,那么select......for update會鎖表還是鎖行,本文就詳細(xì)的來介紹一下,感興趣的可以了解一下
    2021-11-11
  • mySQL count多個表的數(shù)據(jù)實例詳解

    mySQL count多個表的數(shù)據(jù)實例詳解

    這篇文章通過實例給大家介紹了mySQL中count多個表的數(shù)據(jù),也就是多個表如何聯(lián)合查詢,文中通過項目中遇到的一個問題進(jìn)行分析和實現(xiàn),給出了詳細(xì)的示例代碼,相信對大家的理解和學(xué)習(xí)很有幫助,有需要的朋友們下面來一起看看吧。
    2016-11-11
  • 20分鐘MySQL基礎(chǔ)入門

    20分鐘MySQL基礎(chǔ)入門

    這篇文章主要為大家分享了20分鐘MySQL基礎(chǔ)入門教程,快速掌握MySQL基礎(chǔ)知識,真正了解MySQL,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • MySQL鎖情況查看命令

    MySQL鎖情況查看命令

    本文主要介紹了MySQL鎖情況查看命令,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • mysql報錯ERROR 1396 (HY000): Operation ALTER USER failed for root@localhost解決方式

    mysql報錯ERROR 1396 (HY000): Operation ALT

    這篇文章主要給大家介紹了關(guān)于mysql報錯ERROR 1396 (HY000): Operation ALTER USER failed for root@localhost的解決方式,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-05-05

最新評論