1. 程式人生 > >INSERT……SELECT批量插入資料

INSERT……SELECT批量插入資料

假設我們現在有表格stu_grades:

這裡寫圖片描述

我們現在想把課程的資訊單獨提取出來,所以建立課程資訊表course:

CREATE TABLE course (
    id INT PRIMARY KEY AUTO_INCREMENT,
    teacher VARCHAR(10) NOT NULL
    )DEFAULT CHARSET=utf8;

然後我們想將stu_grades中的cid和teacher列轉移到表course中,我們可以執行以下操作:

首先,我們將stu_grades中課程的資訊複製到表格course中。

INSERT INTO course(id,teacher)
    SELECT
cid,teacher FROM stu_grades GROUP BY cid;

插入結果:

這裡寫圖片描述

然後,將stu_grades中的teacher列刪除,並將cid設定為外來鍵。

ALTER TABLE stu_grades DROP COLUMN teacher;
ALTER TABLE stu_grades ADD FOREIGN KEY (cid) REFERENCES course (id);

相關推薦

INSERT……SELECT批量插入資料

假設我們現在有表格stu_grades: 我們現在想把課程的資訊單獨提取出來,所以建立課程資訊表course: CREATE TABLE course ( id INT PRIMARY KEY AUTO_INCREMENT, teache

MYSQL 批量插入資料 insert into ON DUPLICATE KEY UPDATE

#批量插入並根據重複資料進行處理 class DF_MYSQL(DBBase):     #定義操作更新時間相關的方法     #獲取上次更新的時間     def __del__(self):       &

Oracle 批量插入資料 insert all into 用法

專案需要用到匯入excel表,並解析資料批量插入到oracle資料庫中。 1)直接解析excel,迴圈行,拼了sql,executeUpdate。 執行一波… 咦,這效率很低啊,有多少行資料就執行

java mybatis mapper批量插入資料insert/update/對映屬性欄位

@MapperEngine public interface BBINBetsLstMapper { public void replaceBBinBet (List<BBINbet> list); } mapper.xml檔案 <resul

insert into 配合 select批量插入

insert into t_s_fun_custom (c_iden, c_fun_code, c_fun_name, c_fun_code_p, n_fun_type,

mybatis oracle兩種方式批量插入資料

<insert id="addBatch" parameterType="java.util.List">       BEGIN      &

35. 批量插入資料,不使用replace操作

題目描述 對於表actor批量插入如下資料,如果資料已經存在,請忽略,不使用replace操作 CREATE TABLE IF NOT EXISTS actor ( actor_id smallint(5) NOT NULL PRIMARY KEY, first_name varchar(45)

34. 批量插入資料

題目描述 對於表actor批量插入如下資料 CREATE TABLE IF NOT EXISTS actor ( actor_id smallint(5) NOT NULL PRIMARY KEY, first_name varchar(45) NOT NULL, last_name varch

Java之JDBC批量插入資料

普通插入方式 10萬條資料,耗時13秒。。。 private String url = "jdbc:mysql://localhost:3306/test01"; private String user = "root"; private String password

Hibernate入門 批量插入資料

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

【python】爬蟲篇:python使用psycopg2批量插入資料(三)

本人菜雞,有什麼錯誤,還望大家批評指出,最近在更新python的爬蟲系列,○( ^皿^)っHiahiahia… 該系列暫時總共有3篇文章,連線如下 【python】爬蟲篇:python連線postgresql(一):https://blog.csdn.net/lsr40/article/de

【mybatis】mybatis oracle批量插入資料

參考:mybatis 對 oracle 的批量操作:https://blog.csdn.net/dzhuqiaolun/article/details/54864521 寫法一: <insert id="insertAttractionsBatch" parameterType="ja

資料庫之間批量插入資料

package comnf147Package; import java.sql.*; public class DateMigrationLagou { //連線SQLite private Connection getSqlite() throws Exception

資料庫SQL實踐34:批量插入資料

思路: 運用insert into 表名 (列名1,列名2,列名3....)values (values1,values2,....),(values1,values2,....)...; 1.當給所有列插入資料時,加粗的列名可以省略不寫 2.每條資料用逗號分隔,從而實現批量插入 i

資料庫SQL實踐35:批量插入資料,不使用replace操作

思路: SQLite如果不存在則插入,如果存在則忽略 INSERT OR IGNORE INTO tablename VALUES(...); 如果不存在則插入,如果存在則替換 INSERT OR REPLACE INTO tablename VALUES(...); 這裡指的存

EF批量插入資料耗時對比

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace EF批量插入 { class Progra

Mybatis 進行批量插入資料時,處理已經存在的資料

假設存在一張 學生表:{姓名,年齡,年級} 假設已經存在了小明,小王等學生 這時候將姓名設定為唯一的主鍵或者索引 insert into 學生表 (姓名,年齡,年級) values <foreach collection="list" item="item" separator=

MyBatis+Oracle用foreach標籤實現批量插入資料以及主鍵自增

1.前言          最近做一個批量匯入影像的需求,將多條記錄批量插入資料庫中。解決思路:在程式中封裝一個List集合物件,然後把該集合中的實體插入到資料庫中,因為專案使用了MyBatis,所以打算使用MyBatis的foreach功能進行批量插入。資料庫用的是Ora

Mysql優化批量插入資料

最近為了測試專案,需要在Mysql中插入百萬級測試資料,於是用到了批量插入,自己寫了個簡單的Spring Cloud專案。 開始時執行效率很慢,大概100條/秒,批次的大小也試過1000,2000,5000這三個級別,效率還是很低。 查閱資料發現,mysql連線需要加上 rewriteBatchedSt

Redis利用管道批量插入資料

首先需要構造資料的基本格式,如命令   hmset news105 news_title title105 news_content content105 news_views 28 拆分成以下格式: *8 // 按空格拆分有幾段 $5