0

私はこのコマンドを持っています:

INSERT INTO table2 (username,profile) SELECT DISTINCT username,profile 
FROM table1 WHERE profile='$profile' and username <> '$sender'

私の問題は、これが欲しいということです: INSERT INTO table2 (username,profile,type)type は同じ文字列になり、「string」と言います

username重要: 私はDISTINCT になりたいだけです。profiletype同じにすることができます。また、profile常に同じ値になります。

どうすればそれを達成できますか?

どうもありがとう、よろしく

4

2 に答える 2

2
INSERT INTO table2 (username, profile, type)
SELECT username, profile, "string"
FROM table1
WHERE profile='$profile' AND username <> '$sender'
GROUP BY username

SQL インジェクション攻撃の可能性が取り除かれていることを絶対に確認してください(それがあなたにとって何の意味もない場合は、Bobby Tablesについて読んでください)。SQL で評価されないパラメーターとして変数を渡す準備済みステートメントを使用する方がはるかに良いでしょう。$profile$sender

于 2012-05-01T16:49:35.013 に答える
1

私はあなたが次のような出力を探していると大きな仮定をしています...

UserFred profile1 type1
UserBill profile2 type1
UserJim  profile1 type8

副選択に GROUP BY ステートメントを適用する必要があります...

INSERT INTO table2 (username,profile)
   SELECT DISTINCT username,profile 
   FROM table1 WHERE profile='$profile' and username <> '$sender'
   GROUP BY username;
于 2012-05-01T16:57:44.607 に答える