MySQL學習(3)單表查詢

素材如下:

DROP TABLE IF EXISTS `course`;

CREATE TABLE `course` (

? `cs_id` int(11) NOT NULL COMMENT '課程編號',

? `cs_name` varchar(50) NOT NULL COMMENT '課程名稱',

? `cs_credit` tinyint(255) unsigned DEFAULT NULL COMMENT '課程學分',

? `cs_type` char(12) DEFAULT NULL COMMENT '課程類別',

? `cs_depart` char(6) DEFAULT NULL COMMENT '院系名稱',

? PRIMARY KEY (`cs_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Data for the table `course` */

insert? into `course`(`cs_id`,`cs_name`,`cs_credit`,`cs_type`,`cs_depart`) values (5200313,'數據庫原理及應用',4,'核心專業','信工'),(5203314,'計算機導論',4,'通識教育','信工'),(5219314,'數據結構',5,'專業核心','信工'),(5223013,'大學物理',4,'專業基礎','信工'),(5227614,'畢業實習',4,'集中實踐','信工'),(5230912,'云計算',2,'共同選修','信工'),(5236212,'機器學習',2,'共同選修','信工'),(5237514,'c語言',4,'專業基礎','信工'),(5245112,'區塊鏈',2,'任意選修','信工'),(7200422,'知識產權法',2,'任意選修','文法'),(20201833,'概率論',3,'專業基礎','基礎'),(20202336,'高等數學',6,'專業基礎','基礎'),(29299131,'勞動教育',1,'集中實踐','學務');

/*Table structure for table `student` */

DROP TABLE IF EXISTS `student`;

CREATE TABLE `student` (

? `stu_id` bigint(11) unsigned NOT NULL COMMENT '學號',

? `stu_name` char(12) NOT NULL COMMENT '姓名',

? `stu_sex` enum('男','女') DEFAULT NULL COMMENT '性別',

? `stu_age` tinyint(255) unsigned DEFAULT NULL COMMENT '年齡',

? `stu_major` char(9) DEFAULT NULL COMMENT '專業',

? `stu_college` char(12) DEFAULT NULL COMMENT '學院',

? PRIMARY KEY (`stu_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Data for the table `student` */

insert? into `student`(`stu_id`,`stu_name`,`stu_sex`,`stu_age`,`stu_major`,`stu_college`) values (201804550101,'郭奎','男',22,'計科','信工學院'),(201804550102,'呂宇航','男',18,'計科','信工學院'),(201804550103,'張豪輝','女',19,'計科','信工學院'),(201804550107,'丁志杰','男',17,'金融學','金貿學院'),(201804550109,'范偉','男',19,'金融學','金貿學院'),(201804550116,'張依婷','女',17,'大數據','信工學院'),(201804550120,'張維','男',19,'計科','信工學院'),(201804550121,'朱柳陽','女',20,'計科','信工學院'),(201804550144,'譚兵炎','男',20,'大數據','信工學院'),(201804550153,'楊志強','男',17,'大數據','信工學院');

下面的例題我們以這兩個表作為實驗:

?

1.查詢全部課程的信息。?

select cs_name from course;

2.查詢信工學院開設的課程名、課程號及學分。?

select? cs_id,cs_name,cs_credit from course where cs_depart = '信工';

3.查詢學分超過3學分的課程代碼、課程名和開課單位。

select cs_id,cs_name,cs_depart from course where cs_credit > '3' ;

4.查詢計科專業和大數據專業的學生信息。

select * from student where stu_major = '計科' or stu_major = '大數據' ;

5.查詢不是信工學院的學生姓名和學號。

select * from student where stu_college != '信工學院';

6.查詢年齡是17,18,19的學生姓名和專業。?

select * from student where stu_age = '17' or stu_age = '18' or stu_age = '19';

7.查詢學分在2到4之間課程的信息。?

select * from course where cs_credit BETWEEN 2 AND 4;

8.查詢課程名稱中帶“數據”的課程名、課程號及開課單位。

select cs_id,cs_name,cs_depart from course where? cs_name like '%數據%' ;

9.查詢信工學院的的專業有哪些。?

select cs_name from course where cs_depart = '信工';

10.查詢年齡為空的學生信息。?

select * from student where stu_age is NULL;

11.查詢不是信工學院開設的集中實踐課的開課單位和課程名稱。?

select * from course where cs_type = '集中實踐' and cs_depart != '信工';

12.查詢信工學院開設的課程的類型有哪些。?

select distinct cs_type from course where cs_depart = '信工';

distinct 去重查詢

13.查詢學生所在的專業個數。?

select distinct stu_major from student ;

14.查詢信工學院開設的課程的平均學分。?

select avg(cs_credit) from course where cs_depart = '信工';

15.查詢學生的信息,查詢結果按姓名升序排序。?

select * from student order by stu_name asc ;

desc是descend 降序意思
asc 是ascend 升序意思

16.查詢 每個專業的學生的最大年齡、最小年齡和平均年齡,查詢結果按平均年齡降序排列。

select max(stu_age),min(stu_age),avg(stu_age) from student group by stu_major order by avg(stu_age) desc ;

17.查詢每個開課單位開設的課程門數的,查詢結果按課程門數升序排列。?

select cs_depart,count(1) from course group by cs_depart order by count(1);

18.查詢單位開課門數少于2門的開課單位和課程名稱。

select cs_depart,cs_name from course group by cs_depart having count(*) < 2;

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/534378.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/534378.shtml
英文地址,請注明出處:http://en.pswp.cn/news/534378.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL學習(4)多表查詢

1.創建student和score表 CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR(20) , address VARCHAR(50) ); 創建score表。SQL代碼如下&#xff1a; CRE…

MySQL學習(5)數據庫備份

數據庫備份&#xff0c;數據庫為school&#xff0c;素材如下 1.創建student和score表 CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR(20) , address …

MySQL(查看數據文件目錄)

show global variables like %datadir%;

mysql在rpm安裝方式下查看隨機生成密碼命令

mysql安裝成功后創建的超級用戶rootlocalhost的密碼會被存儲在/var/log/mysqld.log grep temporary password /var/log/mysqld.log

MySQL(6)視圖

步驟1&#xff1a;創建學生表stu&#xff0c;插入3條記錄。 CREATE TABLE stu ( s_id INT PRIMARY KEY, s_name VARCHAR(20), addr VARCHAR(50), tel VARCHAR(50) ); INSERT INTO stu VALUES(1,XiaoWang,Henan,0371-12345678), (2,XiaoLi,Hebei,13889072345), (3…

MySQL(7)索引

表結構如下&#xff1a; writers表結構 字段名 數據類型 主鍵 外鍵 非空 唯一 自增 w_id SMALLINT(11) 是 否 是 是 是 w_name VARCHAR(255) 否 否 是 否 否 w_address VARCHAR(255) 否 否 否 否 否 w_age CHAR(2) 否 否 是 否 否 w_note VARCHAR(255) 否 否 否 否 否 …

MySQL(8)存儲過程和函數

字段名 數據類型 主鍵 外鍵 非空 唯一 自增 id INT 是 否 是 是 否 name VARCHAR(50) 否 否 是 否 否 glass VARCHAR(50) 否 否 是 否 否 mysql> create table sch (-> id int primary key not null unique,-> name varchar(5…

MySQL(9)主從復制和讀寫分離

1.理解MySQL主從復制原理。 復制是MySQL提供的一直高可用、高性能的解決方案&#xff0c;一般用來建立大型的應用&#xff0c;總體來說&#xff0c;分為以下三步&#xff1a; (1)master將改變記錄到二進制日志(binary log)中&#xff08;這些記錄叫做二進制日志事件&#x…

NoSQL(1)

1、簡述redis應用場景。 Redis 概念&#xff1a;Redis&#xff08;Remote Dictionary Server&#xff09;&#xff0c;即遠程字典服務&#xff0c;是用C語言開發的一個開源的高性能鍵值對&#xff08;key-value&#xff09;數據庫。特征&#xff1a; 數據間沒有必然的聯系內部…

NoSQL(2)

1、string list hash結構中&#xff0c;每個至少完成5個命令&#xff0c;包含插入 修改 刪除 查詢&#xff0c;list 和hash還需要增加遍歷的操作命令 1、 Keys相關的命令操作&#xff1a; &#xff08;1&#xff09; 查看key是否存在&#xff1a; EXISTS name #判斷該鍵是…

NoSQL(3)

1、什么是MongoDB ? MongoDB 是由C語言編寫的&#xff0c;是一個基于分布式文件存儲的開源數據庫系統。 在高負載的情況下&#xff0c;添加更多的節點&#xff0c;可以保證服務器性能。 MongoDB 旨在為WEB應用提供可擴展的高性能數據存儲解決方案。 MongoDB 將數據存儲為…

Python二級筆記(1)

操作題 1&#xff0c;寬度為30字符&#xff0c;星號字符填充&#xff0c;居中對齊。如果輸入字符串超30位&#xff0c;則全部輸出。 例如:鍵盤輸入字符串q為‘abcd’&#xff0c;屏幕輸出abcd 代碼&#xff1a; s input(請輸入一個字符串&#xff1a;) print({:*^30}.form…

Python二級筆記(2)

知識點&#xff1a; 1&#xff0c;鏈表可以是線性結構也可以是非線性結構 線性表的鏈式存儲結構稱為線性鏈表&#xff1b;鏈表上一種物理存儲單元上非連續&#xff0c;非順序的存儲結構&#xff0c;數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的&#xff0c;鏈表可以說…

Python二級筆記(3)

知識點&#xff1a; 1&#xff0c;排序可以在不同的存儲結構上實現&#xff0c;但快速排序法適于順序存儲的線性表&#xff0c;不適用于鏈式存儲的線性表。 堆棧序適用于線性結構&#xff0c;不適用于非線性結構 2&#xff0c;基本路徑測試根據軟件過程性描述中的控制流確定程…

軟件工程學簡述

軟件危機 軟件危機是指計算機軟件的開發和維護過程中所遇到的一系列嚴重問題。&#xff08;考試中名詞解釋或者選擇題為主&#xff09; 軟件危機的典型表現 &#xff08;1&#xff09;對軟件開發成本和進度的估計常常很不準確。 &#xff08;2&#xff09;用戶對“已完成的…

Python二級筆記(4)

知識點&#xff1a; 1&#xff0c;冒泡排序、快速排序、簡單插入排序、簡單選擇排序在最壞情況下比較次數均為n(n-1)/2&#xff0c;堆排序在最壞情況下比較次數為nlog(2↓)n,在最壞情況下希爾排序需要比較的次數是n(↑r)&#xff08;1<r<2&#xff09;。 2&#xff0c;…

Python二級筆記(5)

知識點&#xff1a; 1&#xff0c;樹的度&#xff0c;及樹中存在的最大度數&#xff1b;如樹的度為3&#xff0c;即樹中只存在度為0&#xff0c;1&#xff0c;2&#xff0c;3的結點。 2&#xff0c;設循環隊列的存儲空間為Q&#xff08;1:m&#xff09;,初始狀態為空。在循環…

Qt圖形界面編程入門(1)

一、類和對象 1&#xff0c;面向過程程序設計&#xff08;自頂向下設計&#xff09; 分析出解決問題所需的步驟&#xff0c;然后用函數把這些步驟一一實現&#xff0c;使用的時候一個一個調用 過程式設計對于比較復雜的問題&#xff0c;或是在開發中需求變化比較多的時候&am…

Qt圖形界面編程入門(2)

二&#xff0c;指針和引用 共同點&#xff1a;它們都代表其他變量占據的某一塊內存區&#xff0c;通過指針或引用都可以對他們代表的其他變量進行操作。 以下語句利用指針對變量賦值&#xff1a; int m; int *p; //指針定義 p &m; //將m的內存地址賦給p *p 5;…

Qt圖形界面編程入門(3)

公有成員和私有成員 從訪問權限上分&#xff0c;類的成員又分為&#xff1a;公有成員&#xff08;public&#xff09;、私有成員&#xff08;private&#xff09;和保護成員&#xff08;protected&#xff09;三類。 公有成員用public來說明。這部分成員可以在程序中通過“…