0

我有这个命令:

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

我的问题是我想要这个:INSERT INTO table2 (username,profile,type)类型将是相同的字符串,比如“字符串”

重要提示:我只想username与众不同。profile并且type可以相同。此外,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

绝对确定并且$profile已经$sender清除了可能的 SQL 注入攻击(如果这对您没有任何意义,请阅读有关Bobby Tables的信息)。最好使用准备好的语句,将变量作为参数传递给其中这些参数不会被 SQL 评估。

于 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 回答