2013-05-21 30 views
0
insert into user 
    (user_id, account_id, user_type_cd, name, e_mail_addr, login_failure_cnt, admin_user, primary_user) 
select * 
from pnet_user 
where account_id='1'; 

但現在我想換1〜2插入的條目。但是現在我想在插入的條目上更改1到3。但是現在我想在插入的條目上更改1 ....但現在我想在插入的條目上更改1到1000。我將如何複製表中的整個行並更改一個值?

它將複製並寫下1000次(只更換ID)。

你明白嗎?對不起我英文不好!非常感謝你 !

+0

其RDBMS 你正在用嗎? MySQL,SQL Server,...?你可以爲此寫一個存儲過程。如果你需要每次增加一個,那麼一個簡單的'for'循環就足夠了 – Barranka

+0

也是......你使用了一些前端語言(PHP,Java,Python ......)嗎?這可能是另一個解決方案 – Barranka

+0

所以你基本上想重新插入相同的數據,只是改變用戶ID? –

回答

1

這完全取決於你的意思;

如果你想第一個1000級的用戶爲什麼不寫;

WHERE account_id <= 1000 

如果你想要所有的用戶;

有沒有WHERE條款。

如果要通過一個參數(用戶輸入)插入所述用戶;

DECLARE @ID int 
SET @ID = 1; 

WHERE account_id = @ID 
+0

非常感謝Clev231! –

0
insert into user 
    (user_id, account_id, user_type_cd, name, e_mail_addr, login_failure_cnt, admin_user, primary_user) 
select * 
from pnet_user 
where account_id BETWEEN 1 AND 1000; 

SELECT雙組分可以一次返回多個行。 (我認爲account_id不是一個真正的字符串,而是一個數字)。 此外,我強烈建議在select語句中輸入列名。

+0

非常感謝!太好了 –

0
insert into user (user_id,account_id,user_type_cd,name,e_mail_addr,login_failure_cnt,admin_user,primary_user) select * from pnet_user 

,你可以specifu列名也,而不是*

insert into user (user_id,account_id,user_type_cd,name,e_mail_addr,login_failure_cnt,admin_user,primary_user) select id,ac_id .... from pnet_user 
+0

非常感謝! –

0

如果ACCOUNT_ID是數字,只要改變where子句

Insert user (user_id, account_id, user_type_cd, 
     name, e_mail_addr, login_failure_cnt, 
     admin_user, primary_user) 
    Select user_id, account_id, user_type_cd, 
     name, e_mail_addr, login_failure_cnt, 
     admin_user, primary_user 
    From pnet_user where account_id 
     Between 1 and 1000 

如果ACCOUNT_ID真的是一個字符串,然後改變它爲數字

Insert user (user_id, account_id, user_type_cd, 
     name, e_mail_addr, login_failure_cnt, 
     admin_user, primary_user) 
    Select user_id, account_id, user_type_cd, 
     name, e_mail_addr, login_failure_cnt, 
     admin_user, primary_user 
    From pnet_user where Cast(account_id as integer) 
     Between 1 and 1000 
+0

非常感謝! –

相關問題