最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL從一個表中查出數據并插入到另一個表的詳細處理方案

 更新時間:2023年12月22日 09:58:52   作者:jerry-89  
這篇文章主要給大家介紹了關于MySQL從一個表中查出數據并插入到另一個表的詳細處理方案,文中通過圖文介紹的非常詳細,對大家學習或者使用MySQL具有一定的參考借鑒價值,需要的朋友可以參考下

PS:來源表:t_source、目標表:t_target

第一種

來源表和目標表字段完全一致

insert into t_target  select * from t_source;

第二種

來源表和目標表字段部分一致,只想導入來源表部分字段到目標表

insert into t_target(字段1,字段2,字段3, ...)  
select 字段1,字段2,字段3, ... from t_source;

第三種

只需要導入目標表中不存在的數據

insert into t_target (字段1, 字段2, ...)  
 SELECT 字段1, 字段2, ...  FROM t_source  
 WHERE not exists (select * from t_target 
 where t_target.比較字段 = t_source.比較字段); 

下面是一個完整的示例,展示了如何將一張名為 source_table 的源表的數據更新到一張名為 target_table 的目標表:

-- 創(chuàng)建目標表
CREATE TABLE target_table (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50),
    age INT
);

-- 確定連接條件
ALTER TABLE target_table ADD COLUMN source_table_id INT;

UPDATE target_table
SET source_table_id = source_table.id
FROM target_table
INNER JOIN source_table
ON target_table.name = source_table.name;

-- 更新數據
UPDATE target_table
INNER JOIN source_table
ON target_table.source_table_id = source_table.id
SET target_table.age = source_table.age;

以上是一個簡單的示例,你可以根據實際情況進行修改和擴展。

總結

通過以上步驟,我們可以將一張表的數據更新到另一張表。首先,我們需要創(chuàng)建一個目標表來接收數據,然后確定源表和目標表之間的連接條件,最后使用 UPDATE 語句將數據更新到目標表。

附:MySQL查詢結果復制到新表的方法(更新、插入)

MySQL中可以將查詢結果復制到另外的一張表中,復制的話通常有兩種情況,一種是更新已有的數據,另一種是插入一條新記錄。下面通過例子來說明。首先構建兩個測試表。

表t1:

查看圖片

表t2:

查看圖片

1、如果t2表中存在score值,將score更新到t1表中。方法如下:

UPDATE t1,t2
SET t1.score = t2.score
WHERE t1.id = t2.id AND t2.score IS NOT NULL

這就是將查詢結果作為條件更新另一張表,當然,t2也可以是更為復雜的一個查詢結果而不是一個具體的表。

2、將t1表的username更新至t2表,將t2表的score更新至t1表。方法如下:

UPDATE t1,t2
SET t1.score = t2.score,t2.username = t1.username
WHERE t1.id = t2.id

這個方法其實跟上面的方法類似,可以同時更新兩個表的數據,即做表部分數據的互相復制、更新。

3、將t2表的查詢結果插入到t1表中。方法如下:

INSERT INTO t1(id,username,score)
SELECT t2.id,t2.username,t2.score FROM t2 where t2.username = 'lucy'

前面兩種方式是更新表的記錄,這種方式是插入一條新的記錄。其實,從腳本可以看出,這個方法就是將查詢和插入兩個步驟合二為一。

用一個表更新另一個表

1、更新一個字段

方法一

   update table1 set field1=table2.field1 from table2
    where table1.id=table2.id

方法二

將兩張表以內連接的方式進行查詢更新

 UPDATE tableName1 t1
    LEFT JOIN tableName2 t2 ON t2.id = t1.id 
    SET t1.lpEntityType2 = t2.lpEntityType2 

方法三

update A m,B mp set m.job_type = mp.job_type where mp.mobile= m.mobile;

2、更新多個字段

方法一

   update B, A
    set 
        B.username = A.username,
        B.phone = A.phone
    where 
        B.userId = A.userId

方法二

將兩張表以內連接的方式進行查詢更新

update 
    B join A on B.userId=A.userId
set 
    B.username = A.username,
    B.phone = A.phone 

MYSQL 更新一個表字段為另外一張表字段

1、UPDATE m_node_device mnd SET mnd.enterprise_id = (SELECT md.enterprise_id FROM m_device md WHERE mnd.device_id = md.id)

2、--     更新表字段為查詢結果中的某一個字段

UPDATE m_device md,
(
SELECT
    mi.img_url AS aa,
    mi.device_id AS bb 
FROM
    m_device_img mi
    INNER JOIN m_device_type_attr ma ON ma.id = mi.device_type_attr_id 
WHERE
    ma.attr_name = '設備銘牌' 
    ) b 
    SET md.nameplate_img = b.aa 
WHERE
    md.id = b.bb 
    AND md.nameplate_img = '' and md.is_deleted = 0

到此這篇關于MySQL從一個表中查出數據并插入到另一個表的詳細處理方案的文章就介紹到這了,更多相關MySQL查出數據插入另一個表內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL性能監(jiān)控與安全管理的完整指南

    MySQL性能監(jiān)控與安全管理的完整指南

    MySQL 的性能監(jiān)控和安全管控是數據庫運維的核心環(huán)節(jié),本文將深入探討 MySQL 的性能監(jiān)控工具、安全審計功能以及精細化的權限管理體系,幫助您構建高性能且安全可靠的數據庫環(huán)境,需要的朋友可以參考下
    2025-10-10
  • mysql 5.7 docker 主從復制架構搭建教程

    mysql 5.7 docker 主從復制架構搭建教程

    這篇文章主要為大家詳細介紹了mysql 5.7 docker 主從復制架構搭建教程,感興趣的小伙伴們可以參考一下
    2016-07-07
  • 教你巧用mysql位運算解決多選值存儲的問題

    教你巧用mysql位運算解決多選值存儲的問題

    如果你不知道什么是位運算的話,那么請你先去看看基礎的C語言教程吧,下面這篇文章主要給大家介紹了關于如何巧用mysql位運算解決多選值存儲問題的相關資料,需要的朋友可以參考下
    2022-02-02
  • 深入理解MySQL中查詢表的歷史操作記錄

    深入理解MySQL中查詢表的歷史操作記錄

    在數據庫管理中,了解如何查詢表的歷史操作記錄對于追蹤數據變更、審計數據以及恢復誤操作至關重要,本文將深入探討MySQL中查詢表的歷史操作記錄的方法,有需要的可以了解下
    2025-12-12
  • MySQL存儲過程的傳參和流程控制示例講解

    MySQL存儲過程的傳參和流程控制示例講解

    這篇文章主要介紹了MySQL存儲過程的傳參和流程控制示例講解,?repeat和Loop區(qū)別是repeat有自己退出循環(huán)的語句until,Loop使用的是if判斷語句,本文結合示例代碼詳細講解,需要的朋友可以參考下
    2023-02-02
  • MySQL數據庫的多表操作

    MySQL數據庫的多表操作

    這篇文章主要介紹了MySQL數據庫的多表操作,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下,希望對你的學習有所幫助
    2022-08-08
  • Mysql?InnoDB中B+樹索引使用注意事項

    Mysql?InnoDB中B+樹索引使用注意事項

    這篇文章主要為大家介紹了Mysql?InnoDB中B+樹索引的注意事項,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • 一篇文章帶你深入了解Mysql觸發(fā)器

    一篇文章帶你深入了解Mysql觸發(fā)器

    這篇文章主要介紹了MySQL觸發(fā)器概念、原理與用法,結合實例形勢詳細分析了mysql觸發(fā)器相關概念、原理、創(chuàng)建、用法及操作注意事項,需要的朋友可以參考下
    2021-08-08
  • MySQL怎么實現(xiàn)原子性的流程詳解(以UPDATE為例)

    MySQL怎么實現(xiàn)原子性的流程詳解(以UPDATE為例)

    原子性是事務的其中一個特性,指的是要么全部執(zhí)行完,要么全都不執(zhí)行,這篇文章主要介紹了MySQL怎么實現(xiàn)原子性(以UPDATE為例)的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-08-08
  • mysql導出指定數據或部份數據的方法

    mysql導出指定數據或部份數據的方法

    mysql雖然可以使用mysqldump來進行數據的到處,可是在很多場合的需求都不一樣,比如我只要導出某個字段呢?只要導出某些我需要的數據呢?
    2014-03-03

最新評論

和林格尔县| 黄龙县| 台南市| 虞城县| 莱州市| 江永县| 江源县| 鹿泉市| 泰来县| 新疆| 彰化县| 赤峰市| 兰州市| 冀州市| 册亨县| 都江堰市| 雷州市| 东明县| 房山区| 进贤县| 固安县| 濮阳县| 界首市| 项城市| 新津县| 平和县| 新绛县| 比如县| 博乐市| 延吉市| 长丰县| 珲春市| 全椒县| 玛沁县| 灵璧县| 德保县| 罗源县| 云南省| 那曲县| 襄汾县| 廉江市|