将SQL结果与字符串连接

时间:2010-01-28 18:35:14

标签: sql

我有一个MSSQL 2005数据库,其中包含自上次备份以来添加的大量记录。我想创建另一个SQL脚本,将结果值放入表示INSERT语句的字符串中,我将保存以供以后使用 类似的东西:

SELECT 'Insert INTO tabname columns VALUES("+Column1"',')' FROM XY

或简单的例子:

Column A,Row1=5

SELECT A+"BLAH" FROM X

应该返回“BLAH5”

谢谢

3 个答案:

答案 0 :(得分:0)

我不确定我是否理解,如果你想构建一个脚本(比方说PHP)只是运行记录并打印出来或提交类似的文件:

echo 'INSERT INTO tablename (field1,field2) VALUES('.$row['field1'].','.$row['field2'].');';

如果您希望直接来自SQL的结果中的字符串可以使用CONCAT

SELECT CONCAT('INSERT INTO...VALUES(',field1,',',field2,')') FROM yourtable;

希望有帮助...

答案 1 :(得分:0)

您应该真正提到您正在使用的SQL数据库系统。

对于MySQL,你想要的是the CONCAT function

SELECT CONCAT('INSERT INTO table (columns) VALUES ("', column1, '");') FROM xy;

答案 2 :(得分:0)

什么版本的sql? 对于ms sql,您可以使用+表示字符串连接和单引号

对于mysql / oracle,使用concat(column,'string')