<acronym id="indot"><dfn id="indot"></dfn></acronym>
<span id="indot"></span>

<bdo id="indot"><meter id="indot"></meter></bdo>
<label id="indot"><samp id="indot"></samp></label>
<label id="indot"><xmp id="indot">
  • <span id="indot"><table id="indot"></table></span>
    <center id="indot"><optgroup id="indot"></optgroup></center>
  • <bdo id="indot"><meter id="indot"></meter></bdo>
      當前位置:首頁 > sql > 正文內容

      mysql基礎查詢的使用

      hxing6411年前 (2024-01-18)sql8091

      創建數據庫

      student表格

      create table student(
      id int PRIMARY KEY COMMENT 'id主鍵',
      `name` varchar(20) COMMENT '名稱',
      gender TINYINT(2) COMMENT '性別 1男 2女 3保密',
      age TINYINT UNSIGNED COMMENT '年齡',
      birthday date COMMENT '出生日期',
      createTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間',
      updateTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '更新時間' on update CURRENT_TIMESTAMP,
      isdel bit(1) DEFAULT 0 COMMENT '是否刪除 0未刪除 1已刪除 默認未刪除'
      );

      成績表格score:

      create table score (
      id int PRIMARY KEY COMMENT 'id主鍵',
      sid int COMMENT '學生id',
      course VARCHAR(20) COMMENT '課程名稱',
      score DECIMAL(4,1) COMMENT '成績'
      );

      因為下面插入數據沒默認寫id的值,所以id為自增的列。


      添加自增:

      alter table student
      MODIFY column id int  auto_increment COMMENT 'id 主鍵';
      alter table score
      MODIFY column id int  auto_increment COMMENT 'id 主鍵';


      初始化數據

      數據下載地址:https://qyboke.lanzoue.com/iuhpB0n0rfij


      score表:

      微信截圖_20240118122626.png

      student表格:

      微信截圖_20240118122738.png


      查詢學生張三的所有成績:

      SELECT s.name,sc.course,sc.score from student s ,score sc where s.id = sc.sid and s.name = '李云';


      查詢平均成績大于60的學生信息:

      SELECT DISTINCT s.* from student s ,score sc where s.id = sc.sid and sc.score > 60;


      查詢有成績的學生信息:

      SELECT DISTINCT s.* FROM student s right JOIN score sc on s.id = sc.sid;


      查詢不及格的學生信息:

      SELECT DISTINCT s.* ,sc.course, sc.score
      FROM student s right JOIN score sc 
      on s.id = sc.sid
      where sc.score < 60;


      查詢各科成績最高分、最低分和平均分:

      SELECT DISTINCT score.course, max(score) over(PARTITION by score.course) '最高分',
      min(score) over(PARTITION by score.course) '最低分',
      avg(score) over(PARTITION by score.course) '平均分'
      FROM score


      查詢各科成績第一名的記錄:

      SELECT DISTINCT sc.course, max(score) over(PARTITION by sc.course) '最高分'
      FROM score sc left JOIN student s
      on sc.sid = s.id


      查詢男生、女生人數:

      SELECT DISTINCT student.gender, count(student.gender) over(PARTITION by student.gender)
      from student


      查詢 1990 年出生的學生名單:

      SELECT * from student where YEAR(birthday) = 1990;


      查詢平均成績大于等于 70 的所有學生的姓名、出生日期和平均成績:

      SELECT DISTINCT s.name,s.birthday,avg(sc.score) over(PARTITION by s.`name`) 
      from score sc left JOIN student s
      on sc.sid = s.id


      查詢mbatis 成績低于60的學生信息:

      SELECT s.*,sc.course,sc.score
      FROM score sc LEFT JOIN student s
      on sc.sid = s.id
      where sc.course = 'mybatis' and sc.score < 60;


      查詢學生成績前三名的記錄:

      SELECT ROW_NUMBER() over() as '成績總分排名', sco.name,sco.allSco
      FROM (
      SELECT DISTINCT s.`name` ,sum(sc.score) over(PARTITION by s.`name`) 'allSco'
      from score sc LEFT JOIN student s
      on sc.sid = s.id ORDER BY allSco desc LIMIT 3
      ) as sco


      查詢學生信息及年齡:

      SELECT stu.name,stu.birthday,(YEAR(CURRENT_DATE) - YEAR(stu.birthday)) '年齡'
      from student stu


      按平均成績從高到低顯示所有學生的所有課程的成績以及平均成績:

      SELECT DISTINCT s.`name` ,sum(sc.score) over(PARTITION by s.`name`) 'allScore',avg(sc.score) over(PARTITION by s.name) '平均成績'
      from score sc LEFT JOIN student s
      on sc.sid = s.id ORDER BY allScore desc


      查詢未成年的學生信息:

      SELECT stu.name, stu.birthday, (year(CURRENT_DATE) - year(birthday)) 'age'
      from student stu
      where (year(CURRENT_DATE) - year(birthday)) < 18


      查詢姓張的 學生信息:

      SELECT *
      FROM student
      where name like '張%'


      查詢本月過生日的學生信息:

      SELECT *
      FROM student
      where MONTH(CURRENT_DATE) = MONTH(birthday)


      查詢本周過生日的學生信息

      SELECT *
      FROM student
      WHERE WEEKOFYEAR(CURRENT_DATE) = WEEKOFYEAR(birthday)


      按各科成績進行排序,并顯示排名

      SELECT stu.name , sc.course ,sc.score, RANK() over(PARTITION by sc.course ORDER BY sc.score desc)
      from score sc LEFT JOIN student stu
      on sc.sid = stu.id



      掃描二維碼推送至手機訪問。

      版權聲明:本文由星星博客發布,如需轉載請注明出處。

      本文鏈接:http://www.7811333.com/?id=516

      分享給朋友:

      “mysql基礎查詢的使用” 的相關文章

      最新Navicat 15 for MySQL破解+教程 正確破解步驟

      最新Navicat 15 for MySQL破解+教程 正確破解步驟

      Navicat for MySQL是一個針對MySQL數據庫而開發的第三方mysql管理工具,該軟件可以用于 MySQL 數據庫服務器版本 3.21 或以上的和 MariaDB 5.1 或以上,這篇文章主要介紹...

      HANA數據庫用戶表PASSWORD_CHANGE_NEEDED和PASSWORD_LIFETIME_CHECK的作用

      因為hana數據庫所在服務器主板出現問題,更換硬件設備重新安裝導入數據后原來的賬戶提示連接失敗,咨詢服務商得知和這2個字段有關,于是記錄備份下。在SAP HANA數據庫中,有兩個與用戶密碼相關的字段,它們分別是"PASSWORD_CHANGE_NEEDED"和"PASS...

      SQL 數據庫 - 創建/管理數據庫

      SQL CREATE DATABASE 語句SQL CREATE DATABASE 語句用于創建一個新的 SQL 數據庫。語法CREATE DATABASE 數據庫名稱;示例以下 SQL 語句創建了一個名為 "testDB" 的數據庫:CREATE ...

      MySQL觸發器的使用

      引言: MySQL是一種廣泛使用的關系型數據庫管理系統,提供了多種功能和工具來支持開發人員處理數據。其中之一就是觸發器(Triggers)。觸發器是在數據庫中定義的一種特殊類型的存儲過程,可以在指定的數據庫操作(如插入、更新或刪除)發生時自動執行。本文將介紹MySQL觸發器的使...

      MySQL修改用戶名密碼:詳細步驟及代碼演示

      MySQL是一種非常流行的開源關系型數據庫管理系統。在使用MySQL時,我們通常需要創建多個用戶并設置相應的權限。當需要修改某個用戶的用戶名或密碼時,該怎么辦呢?本文將詳細介紹MySQL修改用戶名密碼的步驟,并提供相關的代碼演示。 一、連接到MySQ...

      關于MySQL子查詢

      關于MySQL子查詢

      子查詢指一個查詢語句嵌套在另一個查詢語句內部的查詢,這個特性從MySQL4.1開始引入。 SQL中子查詢的使用大大增強了SELECT查詢的能力,因為很多時候查詢需要從結果集中獲取數據,或者需要從同一個表中先計算出一個數據結果,然后與這個數據結果(可能是單行,也可能是多行...

      發表評論

      訪客

      ◎歡迎參與討論,請在這里發表您的看法和觀點。
      主站蜘蛛池模板: 色欲久久久天天天综合网| 亚洲日韩在线中文字幕综合| 五月丁香六月综合缴清无码| 伊人久久大香线蕉综合网站| 久久婷婷成人综合色综合| 中文字幕久久综合| 色妞色综合久久夜夜| 国产成人综合亚洲| 亚洲综合一区二区精品导航 | 五月天婷亚洲天综合网精品偷| 亚洲国产综合精品中文字幕| 亚洲国产精品综合一区在线| 亚洲综合精品网站| 国产综合成人亚洲区| 99久久亚洲综合精品成人网| 99久久国产综合精品麻豆| 亚洲欧美日韩综合久久久久 | 色综合一区二区三区| 久久丝袜精品综合网站| 色欲综合久久躁天天躁| 色悠久久久久久久综合网伊人| 久久久久久综合一区中文字幕| 久久91精品综合国产首页| 亚洲丁香婷婷综合久久| 综合五月激情二区视频| 久久亚洲伊人中字综合精品| 久久婷婷成人综合色| 亚洲国产精品综合久久2007| 久久综合亚洲鲁鲁五月天| 亚洲国产精品成人综合色在线婷婷| 久久无码无码久久综合综合| 亚洲伊人久久大香线蕉综合图片| 伊人色综合一区二区三区| 伊人狠狠色丁香综合尤物| 伊人婷婷色香五月综合缴激情 | 91精品国产综合久久香蕉 | 狠狠色丁香婷婷综合久久来来去| 午夜激情影院综合| 亚洲亚洲人成综合网络| 亚洲国产精品综合久久20| 色欲久久久久久综合网精品|