![](/img/trans.png)
[英]copying selected columns from one table to another using trigger in phpmyadmin
[英]Copying two columns from one table to another
在其他任何地方都找不到我正在尋找的東西。
所以我有表1
users
----------
id
username
password
bio
isuser
email
和表2
wp_users
----------
id
user_login
nice_username
password
email
“ wp_users”表中有500行。 我想將每一行的“ id”和“ user_login”復制到用戶表(“ id”和“ username”)中。
我怎樣才能做到這一點? MySQL不是我的強項。
更新:我在嘗試簡化表格時更新了上面的表格,但得到的解決方案卻是錯誤的。
您可以使用INSERT
- SELECT
語句:
INSERT INTO `users` (id,username,password,bio,isuser,email) SELECT id,
user_login,null,null,null,null FROM `wp_users`;
您可以在SELECT
部件的每個字段上放置另一個字段,甚至可以放置靜態數據。 我將null只是為了說明。
只要記住SELECT
提取的任何內容都會插入INSERT
語句所說的表中(因此您可以在SELECT
部分使用WHERE
, GROUP BY
, HAVING
等子句)。
我相信您正在尋找一個簡單的插入語句:
INSERT INTO users (id,username)
SELECT W.id,
W.user_login
FROM wp_users W
WHERE NOT EXISTS (SELECT NULL
FROM users U
WHERE U.ID = W.ID);
我假設用戶表中的其他列可以為空,如果不能,則可以向select語句添加更多列,並使用其他列中的值。
您沒有提到任何其他鍵或約束,因此我假設沒有任何鍵或約束。
我還提供了WHERE
子句中的檢查,以查看同一ID是否已經存在一行,因此您只需為每個ID插入一行即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.