2010-09-28 57 views
0

我使用VBA excel 2003,SQL 2005来进行sql查询调用,并在我的sql语句中使用'+'运算符连接两个字符串。VBA字符串中的SQL串联

dim query as string 
query = "Select distinct ', '+emailaddress1 " 
query = query & "from contact " 

这将工作内部vba?我的查询在Excel中返回的记录太多,但不是在SQL中?

请专注于这两行代码,而不用担心我的其他sql调用,我只是想知道这个特定的字符串是否会工作?

+0

你试图连接一个前缀逗号分隔每个电子邮件地址? – 2010-09-28 23:27:55

+0

是的,我试图让电子邮件看起来像“[email protected],[email protected]”.... – EKet 2010-09-28 23:29:24

回答

0

您的代码将返回一列,其中每一行都将是一个电子邮件地址,并在其前面带有逗号。如果这是你想要的,那么是的,它会起作用。

如果,相反的,你想在那里的所有电子邮件地址将被列为一个单独的字符串,以逗号分隔,这会是

query =   "declare @foo varchar(max);" 
query = query & "select distinct @foo = isnull(@foo,'') + emailaddress1 + ', ' from contact;" 
query = query & "select left(@foo, len(@foo)-2);" 
+0

感谢您的直接答案......它只是一个语法问题:) – EKet 2010-09-28 23:49:40