2009-03-05 6 views
0

私はuserIDとcontentIDの2つの列を持つテーブルを持っています。基本的に、この表は、特定のコンテンツへのアクセスを特定のユーザーに割り当てるために使用されます。私はコンテンツAに割り当てられているすべてのユーザーの要求もコンテンツBに割り当てられています。したがって、このデータ(ユーザーID、[コンテンツBのID]コンテンツAのID])?各SQLには?

OK私は上の2つのポストが言ったことをしようと、それはそれを変換:

INSERT INTO tbl_courseAccess 
         (contentid) 
SELECT  11 AS Expr1 
WHERE  (contentid = 6) 

と動作しませんでしたので、私はここに、私が間違って何をしたかわからないんだけど、私が使用しようとしたものです:

​​

[OK]私は新しいソリューションを見つけました。もうこれ以上心配しないでください。みんなありがとうございます。

+0

Ryan、より詳細なテーブル構造を教えてください。私の理解だけでなく、他の多くの人からも、スマートな挿入ステートメントでこれを行うことができますが、もっと情報が必要です。 – achinda99

+0

それは2つの列、userid、contentidのようなものなので、各行は0,5または12,6などと似ています。私はちょうどすべての行がuseridである必要があります。主キーとしてマーク – BigOmega

+0

あなたがあなたの選択したを忘れました。または回答者がしました。それを追加すればうまくいくはずです。 – wds

答えて

4
​​

を訂正:はあなたに仕事をする必要があり、他の回答者

0
insert into [tablename] 
(userid, contentid) 
select userid, [id of content B] 
where contentid = [id of content A] 
+0

に 'from'が必要な場合、または失敗する – BigOmega

0
insert into your_table(userid, contentid) select userid, 
[id of content B] from your_table where contentid = [id of content A]) 

レースにはあまりにも速く打ちます。

0
INSERT INTO mytable (userID,contentID) 
    SELECT userID,[id of content B] FROM mytable 
    WHERE content = [id of content A];