2013-04-07 73 views
0

我有一个表与下面的架构需要帮助建立一个SQL查询

样品表

email  | name | address 
[email protected] | A  | CA 

我想有五个不同的静态电子邮件地址

同一组记录预期产出

email    | name | address 
[email protected] | A  | CA 
[email protected] | A  | CA 
[email protected] | A  | CA 
[email protected] | A  | CA 
[email protected] | A  | CA 

这可能吗?

+3

你真的需要做的SQL一边? – plaes 2013-04-07 08:18:54

+1

你用什么dbms? MSSQL?甲骨文? DB2? PostgreSQL的? MySQL的? – 2013-04-07 08:19:33

+0

最好是Mysql ...因为我正在使用一个与它非常相似的内部工具 – 2013-04-07 08:20:27

回答

1

尝试

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 | 
-------------------------------------- 
| [email protected] | A |  CA | 
| [email protected] | A |  CA | 
| [email protected] | A |  CA | 
| [email protected] | A |  CA | 
| [email protected] | A |  CA | 

SQLFiddle

+0

是的,这是它,但它听起来像你刚刚给垃圾邮件发送者一个解决方案来生成一堆电子邮件。 – DRapp 2013-04-07 12:00:55

+0

真棒...:D:D – 2013-04-08 05:40:09