mysql - 需要帮助来构建 sql 查询

标签 mysql sql

我有一个具有以下架构的表

示例表格

email        |  name  |  address 
1@gmail.com  |  A     |  CA

我想要具有五个不同静态电子邮件地址的同一组记录

预期输出

email              |   name   |   address
static1@gmail.com  |   A      |   CA
static2@gmail.com  |   A      |   CA
static3@gmail.com  |   A      |   CA
static4@gmail.com  |   A      |   CA
static5@gmail.com  |   A      |   CA

这可能吗?

最佳答案

尝试

SELECT CONCAT('static', @n := @n + 1, '@', SUBSTRING_INDEX(email, '@', -1)) email,
       `name`,
       address
  FROM table1 CROSS JOIN  
       INFORMATION_SCHEMA.COLUMNS JOIN
       (SELECT @n := 0) n
 LIMIT 5

输出:

|             EMAIL | NAME | ADDRESS |
--------------------------------------
| static1@gmail.com |    A |      CA |
| static2@gmail.com |    A |      CA |
| static3@gmail.com |    A |      CA |
| static4@gmail.com |    A |      CA |
| static5@gmail.com |    A |      CA |

<强> SQLFiddle

关于mysql - 需要帮助来构建 sql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15860295/

相关文章:

php - 在 2 个表中列出成员的所有内容(问题、答案)

javascript - DELETE 后计算行顺序

sql - 如果所有/一个参数为空?

php - 选择具有给定 id 位置的所有数据

mysql - SQL查询设计帮助: Finding duplicates in multiple tables & exclusions

php - 使用 PDO Fetch 时出现意外输出

mysql - 序列化查询以获取不在关联中的记录

Mysql:ORDER BY子句中的最大列数?

php - oci_bind_by_name RETURNING INTO 截断值

mysql - 在MySQL文本类型字段中序列化长数组并增加文本类型的大小。