postgresql複製表結構和數據

一、只複製表結構

1、CREATE TABLE bas_cm_customer_bak  AS(SELECT * from bas_cm_customer limit 0)

2、CREATE TABLE bas_cm_customer_bak  (LIKE bas_cm_customer)

二、複製表結構及數據

1、CREATE TABLE bas_cm_customer_bak  AS(SELECT * FROM bas_cm_customer)

2、INSERT INTO bas_cm_customer_bak (field1,field...) SELECT field1,field2... FROM bas_cm_customer

      如果是字段全量複製的話,則簡化爲:

      INSERT INTO bas_cm_customer_bak SELECT * FROM bas_cm_customer

3、SELECT * INTO bas_cm_customer_bak  FROM bas_cm_customer

其中  SELECT * INTO bas_cm_customer_bak  IN  'Backup.mdb' FROM bas_cm_customer 是用於向另一個數據庫

中拷貝表,此語句是全量拷貝表結構和數據,如果只需要其中某些域的話:

SELECT field1,field2 INTO bas_cm_customer_bak FROM bas_cm_customer

這三個語句在建表複製數據的時候,都可以通過增加WHERE條件進行數據篩選,當增加篩選條件後,沒有數據符合要求,那麼就是複製表結構。

2、3點釋義:SELECT INTO FROM 和 INSERT INTO SELECT都是用來複製表的,主要區別在於,前者要求目標表

不存在,因爲在插入時會自動創建,而後者則要求目標表存在

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章