2010-09-28 76 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