2014-12-03 20 views
0

請僅選擇此列中的電子郵件, 我正在使用T-sql,表名爲emailfound,列爲emailfoundcolumn。我試圖用試圖選擇列中的文本

SELECT CASE 
     WHEN CHARINDEX(':', emailfoundcolumn) > 30 
      THEN LEFT(emailfoundcolumn, CHARINDEX(':', emailfoundcolumn) - 1) 
     ELSE emailfoundcolumn 
     END 
FROM emailfound 

這是值的樣本中列 來源:[email protected]

-----Original Message-----From: [email protected] 
-----Original Message-----From: [email protected] 
-----Original Message-----From: [email protected] 
-----Original Message-----From: [email protected] 
-----Original Message-----From: [email protected] 
-----Original Message-----From: [email protected] 

但價值只是返回的電子郵件的前前文列

+0

嘗試['SUBSTRING()'函數](HTTP:/ /msdn.microsoft.com/en-us/library/ms187748.aspx)而不是'LEFT()'。 – 2014-12-03 15:43:45

回答

1

你需要爲你需要的字符串

的最後部分使用right這應該工作

right(@emailfoundcolumn, len(@emailfoundcolumn)-CHARINDEX(':', @emailfoundcolumn) - 1)