跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • SELECT 旧表内容, INSERT 到新表,如何忽略`id`字段比较科学?
未分類
10 9 月 2020

SELECT 旧表内容, INSERT 到新表,如何忽略`id`字段比较科学?

SELECT 旧表内容, INSERT 到新表,如何忽略`id`字段比较科学?

資深大佬 : qazwsxkevin 6

想把旧表的一些内容,插入到新表,用了*的话,会把旧表的 id 号也带过去了
(字段比较多)

我能想到的是
先根据 oldtbl 结构创建一个 tmptbl
INSERT INTO temptbl SELECT * FROM oldtbl WHERE XX=XX;
先把东西放到到临时表
对 temptbl 进行删除 id 列
再把 temptbl 的内容 SELECT *插入到 newtbl

如果是在程序设计部分,稍微复杂些,我先把表结构读了出来,建 tmptbl,然后组装字段段,Value 段,避开`id`,一条 SQL 撸完
而 SQL 本身的语法设计,似乎没有忽略字段这样操作?

大佬有話說 (5)

  • 資深大佬 : RedBeanIce

    一个表三个字段,id, username, password
    不写*,写三个字段

    然后
    ‘null’, ‘username’, ‘password’

    类似下面这种
    insert into sys_userinfo (id, userCode, username, password)
    select null, 123456, ‘username’, ‘password’
    from t_product;

  • 資深大佬 : tydl

    navicat 工具
    1.导出原表的 excel
    2.用 excel 打开,删除 id 列
    3.导入 excel 追加新表里

  • 資深大佬 : levelworm

    呃,可能我理解错了,但是 datagrip 可以直接展开所有字段?然后删除 id 就好了吧。

  • 資深大佬 : hooopo

    select *, null as id

  • 資深大佬 : zhangysh1995

    create table t select a, b, c from oldtbl.

    https://dev.mysql.com/doc/refman/8.0/en/create-table-select.html

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具