sql从另一个表复制数据插入或更新INSERT INTO SELECT,UPDATE

一、通过 SQL,您可以从一个表复制信息到另一个表。

INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。目标表中任何已存在的行都不会受影响。

SQL INSERT INTO SELECT 语法

我们可以从一个表中复制所有的列插入到另一个已存在的表中:

<code>INSERT INTO table2 SELECT * FROM *table1;/<code>

或者我们可以只复制希望的列插入到另一个已存在的表中:

或者我们可以只复制希望的列插入到另一个已存在的表中:

<code>INSERT INTO table2(column_name(s)) SELECT column_name(s) FROM *table1;/<code>

示例如下:

<code>#插入数据,来自另一表
INSERT INTO px2019(bqid,xm,xb,sfzh) SELECT bqid,xm,xb,sfzh FROM temp2;/<code>
sql从另一个表复制数据插入或更新INSERT INTO SELECT,UPDATE

二、更新数据

<code>UPDATE px2019 a SET jdzbh=(SELECT zsbh from jd2019 b where b.sfzh=a.sfzh and b.jdzy=a.pxgz)/<code>

若不加where条件则是更新表中的所有数据,故执行没有where子句的update要慎重再慎重。

<code>UPDATE
  Table_A
SET
  Table_A.col1 = Table_B.col1,
  Table_A.col2 = Table_B.col2
FROM
  Some_Table AS Table_A
  INNER JOIN Other_Table AS Table_B
       ON Table_A.id = Table_B.id
WHERE
  Table_A.col3 = 'cool'/<code>



分享到:


相關文章: