mysql建表sql

mysql建表

文章目錄

  • mysql建表
    • mysql學生表
    • 插入數據
    • 建表,學生和id
    • group by
    • inner join

mysql學生表

CREATE TABLE `courses` (
`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增id',
`student` VARCHAR(255) DEFAULT NULL COMMENT '學生',
`class` VARCHAR(255) DEFAULT NULL COMMENT '課程',
`score` INT(255) DEFAULT NULL COMMENT '分數',
PRIMARY KEY (`id`),
UNIQUE KEY `course` (`student`, `class`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

插入數據

INSERT INTO `courses`(`student`, `class`, `score`) VALUES('A', 'Math', 90);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('A', 'Chinese', 80);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('A', 'English', 70);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('A', 'History', 80);INSERT INTO `courses`(`student`, `class`, `score`) VALUES('B', 'Math', 73);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('B', 'Chinese', 60);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('B', 'English', 70);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('B', 'History', 90);INSERT INTO `courses`(`student`, `class`, `score`) VALUES('C', 'Math', 70);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('C', 'Chinese', 50);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('C', 'English', 20);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('C', 'History', 10);INSERT INTO `courses`(`student`, `class`, `score`) VALUES('D', 'Math', 53);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('D', 'Chinese', 32);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('D', 'English', 99);
INSERT INTO `courses`(`student`, `class`, `score`) VALUES('D', 'History', 100);

建表,學生和id

CREATE TABLE `phone` (
`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增id',
`student` VARCHAR(255) DEFAULT NULL COMMENT '學生',
`phone` VARCHAR(255) DEFAULT NULL COMMENT '電話',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

group by

mysql> select * from courses;
+----+---------+---------+-------+
| id | student | class   | score |
+----+---------+---------+-------+
|  1 | A       | Math    |    90 |
|  2 | A       | Chinese |    80 |
|  3 | A       | English |    70 |
|  4 | A       | History |    80 |
|  5 | B       | Math    |    73 |
|  6 | B       | Chinese |    60 |
|  7 | B       | English |    70 |
|  8 | B       | History |    90 |
|  9 | C       | Math    |    70 |
| 10 | C       | Chinese |    50 |
| 11 | C       | English |    20 |
| 12 | C       | History |    10 |
| 13 | D       | Math    |    53 |
| 14 | D       | Chinese |    32 |
| 15 | D       | English |    99 |
| 16 | D       | History |   100 |
+----+---------+---------+-------+
16 rows in set (0.00 sec)mysql> select class, min(score) from courses group by class;
+---------+------------+
| class   | min(score) |
+---------+------------+
| Math    |         53 |
| Chinese |         32 |
| English |         20 |
| History |         10 |
+---------+------------+
4 rows in set (0.00 sec)mysql> select class from courses group by class;
+---------+
| class   |
+---------+
| Chinese |
| English |
| History |
| Math    |
+---------+
4 rows in set (0.00 sec)

inner join

mysql> select *  from phone;
+----+---------+-------------+
| id | student | phone       |
+----+---------+-------------+
|  1 | A       | 123123123   |
|  2 | B       | 12312312322 |
|  3 | C       | 321321      |
+----+---------+-------------+
3 rows in set (0.00 sec)mysql> select *  from courses;
+----+---------+---------+-------+
| id | student | class   | score |
+----+---------+---------+-------+
|  1 | A       | Math    |    90 |
|  2 | A       | Chinese |    80 |
|  3 | A       | English |    70 |
|  4 | A       | History |    80 |
|  5 | B       | Math    |    73 |
|  6 | B       | Chinese |    60 |
|  7 | B       | English |    70 |
|  8 | B       | History |    90 |
|  9 | C       | Math    |    70 |
| 10 | C       | Chinese |    50 |
| 11 | C       | English |    20 |
+----+---------+---------+-------+
11 rows in set (0.00 sec)mysql> select a.phone, b.class from phone a inner join courses b on a.student= b.student;
+-------------+---------+
| phone       | class   |
+-------------+---------+
| 123123123   | Chinese |
| 123123123   | English |
| 123123123   | History |
| 123123123   | Math    |
| 12312312322 | Chinese |
| 12312312322 | English |
| 12312312322 | History |
| 12312312322 | Math    |
| 321321      | Chinese |
| 321321      | English |
| 321321      | Math    |
+-------------+---------+
11 rows in set (0.00 sec)mysql> select distinct a.phone, b.student from phone a inner join courses b on a.student= b.student;
+-------------+---------+
| phone       | student |
+-------------+---------+
| 123123123   | A       |
| 12312312322 | B       |
| 321321      | C       |
+-------------+---------+
3 rows in set (0.00 sec)

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

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

相關文章

Effective C++學習第一天

1:區分C中的術語聲明、定義、初始化的概念聲明(declaration):告訴編譯器某個東西的名稱和類型,但略去其他細節(可以出現多次,編譯器不分配內存)。定義(definition&#x…

Redis運維和開發學習筆記(1) Redis簡介

文章目錄Redis的特性速度快持久化多種數據結構主從復制高可用和分布式典型的應用場景Redis啟動和可執行文件Redis可執行文件說明啟動方式驗證redisredis常用配置redis數據結構和內部編碼Redis是單線程,不會同時執行兩條命令哈希慢查詢pipelineRedis的特性 速度快 …

Effective C++學習第二天

1:確保對象被使用前已先被初始化,讀取未初始化的值會造成不明確的行為,可能導致程序終止運行或者其他不可預期的現象;在C中,當你使用C part of C(C中C語言部分的內容)且初始化可能導致運行期成本&#xff0…

Redis運維和開發學習筆記(3)redis搭建集群

Redis運維和開發學習筆記(3)redis搭建集群 文章目錄Redis運維和開發學習筆記(3)redis搭建集群Redis集群搭建Redis集群搭建 cp /etc/redis.d/redistest_7001.conf /etc/redis.d/redistest_XXXX.conf :%s/7001/xxxx/g 配置文件內容:cluster-enabled yes ############…

Effective C++學習第三天

1:為多態基類聲明virtual析構函數當我們創建一個base class指針指向新生成的derived class時,當刪除基類指針時,如果base class是一個non-virtual析構函數時,實際執行的結果通常是derived class中的base成分被銷毀,der…

linux創建指定大小的文件

一、生成文件大小和實際占空間大小一樣的文件 dd if/dev/zero ofname.file bs1M count1 文件名稱name.file bs1M表示每一次讀寫1M數據,count50表示讀寫 50次,這樣就指定了生成文件的大小為50M。 二、生成文件大小固定,但實際不占空間命令 …

Effective C++學習第四天

條款11:在operator中處理自我賦值的現象雖然我們在平時可能不會出現顯示自我賦值的現象,當加入指針或者引用時,可能會出現不同的指針或引用指向同一對象(對象的不同別名),這時候我們就得考慮對象是否是同一…

Effective C++學習第五天

條款14:在資源管理類中小心copy行為當我們深入理解“資源取得時機是初始化時機(RAII)”概念,并以此作為“資源管理類”的核心時,我們可能會遇到將RAII對象復制的情況,一般有兩種情況處理這個現象&#xff1…

Redis運維和開發學習筆記(2) redis持久化

Redis運維和開發學習筆記(2) redis持久化 文章目錄Redis運維和開發學習筆記(2) redis持久化持久化持久化方式一:RDB觸發~~的三種~~方式1. save命令2. bgsave配置觸發機制RDB 總結持久化方式二:AOFAOF的三種策略三種策略的優缺點AOF重寫機制持久化 redis將所有數據保存在內存中&…

Effective C++學習第六天

條款18:讓接口更容易被正確使用,不易被誤用設計接口的原則:正確性、高效性、封裝性、維護性、延展性以及協議的一致性;設計原則:1)導入新類型來預防很多客戶端的錯誤,多使用系統類型&#xff08…

Redis運維和開發學習筆記(4) Redis參數意義

Redis運維和開發學習筆記(4) Redis參數意義 文章目錄Redis運維和開發學習筆記(4) Redis參數意義參數意義參數意義 Client連接 問題 id567800790 addr10.18.17.217:37310 fd1572 name age2039114 idle2034860 flagsN db0 sub0 psub0 multi-1 qbuf0 qbuf-free0 obl0 oll0 omem0 …

Effective C++學習第七天

條款23:寧以non-memeber、non-friend替換member函數non-member/non-friend可以給對象帶來更大的封裝性,從兩個方面來考慮:1)考慮封裝,越多東西被封裝,它們就越不可見,就越少人看到它&#xff0c…

Redis運維和開發學習筆記(5) 主從復制和sentinel哨兵模式

Redis運維和開發學習筆記(5) 主從復制和sentinel哨兵模式 主從復制 將主節點的數據改變同步給從節點 作用 備份數據讀寫分離 存在的問題: 手動干預切主等操作主節點的寫能力受到單機限制主節點的存儲能力受到單機限制 主從模式的故障恢復 當主節點發生故障時&am…

Effective C++學習第八天

條款26:盡可能延后變量定義式的出現時間當你定義了一個變量,如果在使用變量之前出現異常,那么你得承受一次構造成本和析構成本,而且你沒有使用該變量;本條款給出的建議是延遲變量的定義,直到非得使用該變量…

Redis運維和開發學習筆記(6) 監控Redis工作狀態-info命令

Redis運維和開發學習筆記(6) 監控Redis工作狀態-info命令 文章目錄Redis運維和開發學習筆記(6) 監控Redis工作狀態-info命令info serverinfo clientinfo memoryinfo persistenceinfo statsinfo commandstatsinfo cpuinfo clusterinfo keyspaceinfo server Redis服務器相關的通用…

Effective C++學習第九天

條款32:確定你的public繼承塑模出is-a模型class D(derived)以public形式繼承class B(base),則每一個類型為D的對象同時也是一個類型為B的對象,反之不成立,因此B比D表現出更加一般化的…

Effective C++學習第十天

條款36:絕不重新定義繼承而來的non-virtual函數non-virtual函數執行的是靜態綁定,在編譯器就已經決定,因此對象對用的函數只和指針的類型有關,而與指針所指的對象無關;記住non-virtual函數的性質:不變性凌駕…

Redis運維和開發學習筆記(7) 內存管理和過期策略

Redis運維和開發學習筆記(7) 內存管理和過期策略 文章目錄Redis運維和開發學習筆記(7) 內存管理和過期策略內存回收策略惰性刪除定時任務刪除maxmemory過期策略allkeys-lru主從搭建測試搭建完畢主從測試結果volatile-lru測試結果volatile-ttl測試結果allkeys-lru內存回收策略 …

Effective C++學習第十一天

條款41:了解隱式接口和編譯期多態面向對象編程世界總是以顯式接口(源碼可見的接口)和運行期多態(virtual)解決問題;對于templates及泛型編程的世界,隱式接口和編譯期多態顯得更加重要&#xff1…

Redis源碼分析(零)學習路徑筆記

文章目錄第一階段第二階段 熟悉Redis的內存編碼結構第三階段 熟悉Redis數據類型的實現第四階段 熟悉Redis數據庫的實現第五階段 熟悉客戶端和服務器端的代碼實現第六階段 這一階段主要是熟悉Redis多機部分的代碼實現關于測試方面的文件有一些工具類的文件如下SORT命令的實現一些…