如何使用sql update更新数据库中的电子邮件?

时间:2018-09-28 06:22:06

标签: php mysql sql

在我的数据库中,我有个人电子邮件字段,其中包含用户电子邮件。我只想将所有用户电子邮件更新为我的测试电子邮件。

个人电子邮件

例如。

john@gmail.com >> test1@test.com
alves@gmail.com >> test2@test.com

请注意,我有40,000多条记录,因此我想使用sql更新查询来更新不等于null的个人电子邮件字段

3 个答案:

答案 0 :(得分:2)

猜您的用户表是这样的:-

| id | username  | email            | password   |
--------------------------------------------------
| 1  |  john     | john@gmail.com   | $jhbhbjj.. |
| 2  |  alvis    | alvis@gmail.com  | $dcdcdcd.. |

现在我们将每个电子邮件字段更新为以下格式

newemail = "test"+id+"@test.com".
// id is the auto increment column

我们可以使用mysql concat将这些字符串和列连接在一起。 https://www.w3schools.com/sql/func_mysql_concat.asp

所以我们正在使用concat("test",id,"@test.com")

运行UPDATE users SET email= CONCAT("test",id,"@test.com")之后  您可以得到如下表格

| id | username  | email            | password   |
--------------------------------------------------
| 1  |  john     | test1@test.com   | $jhbhbjj.. |
| 2  |  alvis    | test2@test.com   | $dcdcdcd.. |

答案 1 :(得分:0)

尝试

UPDATE users
   SET email = CONCAT("test",id,"@test.com")

这样,您可以在更新查询中使用表的主键而不是id。

答案 2 :(得分:0)

您可以使用此命令;

UPDATE tblEmail SET tblEmail.column = `new value` WHERE tblEmail.column like('old value');

在WHERE子句中使用LIKE运算符在列中搜索指定的模式。 -> https://www.w3schools.com/SQL/sql_like.asp