1. 程式人生 > >MySql 學生表 科目表 成績表 查詢學生各科成績

MySql 學生表 科目表 成績表 查詢學生各科成績


Sql語句:

SELECT s.sid 學號,s.sname 姓名,

MAX(

 CASE 

  WHEN subj.subname = 'chinese'

   THEN sc.score

   ELSE 0

  END

語文,

MAX(

 CASE 

  WHEN subj.subname = 'math'

   THEN sc.score

   ELSE 0

   END

數學,

MAX(

 CASE 

  WHEN subj.subname = 'english'

   THEN sc.score

   ELSE 0

   END

英語

FROM student s INNER JOIN scoreinfo sc ON s.sid = sc.sid INNER JOIN subject subj ON subj.subid = sc.subid GROUP BY s.sid ORDER BY s.sid;


相關推薦

MySql 學生 科目 成績 查詢學生各科成績

Sql語句: SELECT s.sid 學號,s.sname 姓名, MAX(  CASE    WHEN subj.subname = 'chinese'    THEN sc.score    ELSE 0   END ) 語文, MAX(  CASE    WH

MySQL學生、教師、課程表、成績)多查詢

                                              多表查詢SQL語句 1、表架構 student(sid,sname,sage,ssex) 學生表  course(cid,cname,tid) 課程表  sC(sid,cid,sc

MySQL資料庫例題:學生-課程表-成績查詢成績

//建立學生表   mysql> create table student(       -> sno char(5) not null primary key,       -> sname char(8) not null,       

sql面試題(學生_課程表_成績_教師mysql

原帖連結:http://bbs.csdn.net/topics/280002741 建表語句: CREATE TABLE student ( s_id INT, sname varchar(32), sage INT, ssex var

mysql巧用連查詢各科成績前三名

下列是各表的詳情,不想自己建表的同學可以直接copy code,資料隨意。 建立表成績詳情表: CREATE TABLE score ( id int(10) NOT NULL AUTO_INCREMENT, subject_id int(10

sql語句多查詢(學生/課程表/教師/成績 )

問題及描述: --1.學生表 Student(S#,Sname,Sage,Ssex) --S# 學生編號,Sname 學生姓名,Sage 出生年月,Ssex 學生性別 --2.課程表 Course(C#,Cname,T#) --C# --課程編號,Cname 課程名稱,T# 教師編號 --3.教師表 Te

學生/教師/課程表/成績常見SQL查詢

1. 在表中插入符合主鍵 [sql]  /*成績表*/  CREATE TABLE SC   (   Sid INT REFERENCES Student(Sid), /*學生學號*/  Cid INT REFERENCES Course(Cid), /*課程編號*/ 

MySQL練習-主外鍵多查詢

名稱 having用法 mysq bold 約束 mysql auto update caption 練習: 1.建立表關系: 請創建如下表,並創建相關約束 1 USE db1; 2 CREATE TABLE class( 3 cid INT AUT

Mysql中使用存儲過程返回查詢多個的數據信息

lan var rmi pan cas nis lang fun sub -- 測試手機號 call P_Base_CheckLogin(‘15584463676‘); -- 測試登錄名 call P_Base_CheckLogin(‘sch000001‘)

MYSQL學習筆記2)多連接查詢

mysql3種連接方式的區別:INNER JOIN(內連接,或等值連接):獲取兩個表中字段匹配關系的記錄。LEFT JOIN(左連接):獲取左表所有記錄,即使右表沒有對應匹配的記錄。RIGHT JOIN(右連接): 與 LEFT JOIN 相反,用於獲取右表所有記錄,即使左表沒有對應匹配的記錄。3個表連接查詢

MySQL 數據庫之單查詢

and 使用 count 得到 註意 記錄 order by 我們 函數 一.查詢語法 SELECT 字段1,字段2... FROM 表名 WHERE 條件 GROUP BY field

必看,經典sql面試題(學生_課程表_成績_教師

tin bsp get upload png idt cimage gem 公開 點擊鏈接加入QQ群 522720170(免費公開課、視頻應有盡有):https://jq.qq.com/?_wv=1027&k=5C08ATe http://xqtesting.com

mysql數據操作之多查詢

子查詢 any 資源 splay having span left join 返回 union 一:介紹 主題:   多表連接查詢   符合條件連接查詢   子查詢 準備表 #建表 create table department( id int, name varcha

MySQL數據庫語法-多查詢練習一

轉載 AR author img 工資 class mage HA eid                 MySQL數據庫語法-多表查詢練習一                                       作者:尹正傑 版權聲明:原創作品,謝絕轉載!否則將追

查詢mysql數據庫中所有

lai from mysq word keyword info sch ble orm 查找所有表的語句 select table_name from information_schema.tables where table_schema=‘當前數據庫‘; 查詢mysq

解析mysql中:單distinct、多group by查詢去除重復記錄

itl lec sql 4.0 mysql clas 遺憾 join 去除 單表的唯一查詢用:distinct多表的唯一查詢用:group bydistinct 查詢多表時,left join 還有效,全連接無效,在使用mysql時,有時需要查詢出某個字段不重復的記錄,雖然

mysql 的完整性約束 與單查詢

nbsp 關聯表 創建表 財務 insert const lap ces asc 1 foreign key 外鍵 建立兩張表的聯系 1 創建表時先創建被關聯的表 在創建關聯表 create table dep( id int primary key, nam

建立學生、課程、老師、學生成績

建立學生S、課程C、老師T、學生成績表SC: 相關的sql練習:https://blog.csdn.net/glgom/article/details/82900890 -- 學生資訊表 CREATE TABLE S( UUID VARCHAR(36) NOT NULL COMMENT '隨

mysql實現成績成績的排名

有這樣的一個表: 如果兩個分數相同,則兩個分數排名(Rank)相同平分後的下一個名次應該是下一個連續的整數值。 因此,名次之間不應該有“間隔”! 此時有2種方法: 第一: select grade, (select count(distinct grade) from class3 w

MySQL優化分庫分,為什麼要分,分以後如何進行排序查詢,業務如何設計?

MySQL優化分庫分表,為什麼要分表,分表以後如何進行排序查詢,業務如何設計? 昨天面試新人的時候,遇到了這麼一個問題,按照自己的想法大體聊了一些,但大多是感性的,並沒有完整的瞭解why and how. 今天查了一些相關的資料,包括《MySQL效能調優與架構設計》、《高效能Mysql》,慢慢的整