2016-04-15 26 views
-1

我想從我的table_name中刪除column_content的所有鏈接。 鏈接看起來像:SQL查找並替換列中的文本

<a style="text-decoration:none" href="/index.php?o=oda-res-site">.</a> 

href="........"是每條記錄不同。

你可以幫助一個帶通配符的語句來清除所有鏈接<a ..../a>

我嘗試這樣做:

UPDATE MyTable 
SET StringColumn = REPLACE (StringColumn, 'SearchForThis', 'ReplaceWithThis') 

,但我無法找到正確的通配符來包括 - 如果possible-所有鏈接。

謝謝 我使用phpMyAdmin

+2

您使用的是哪種數據庫管理程序?爲'sql-server','MySQL'或其他任何東西添加一個標籤。 – Smandoli

+1

「column_content」記錄中有哪些信息?可以有多個鏈接? – Smandoli

+0

'regexp_replace()'想到 –

回答

0

嗯......如果我有你的權利,該解決方案不應該是困難的。根據您的示例編寫示例代碼:

DECLARE @MyString nvarchar(250) = N'<a style="text-decoration:none" href="/index.php?o=oda-res-site">.</a>'; 
SELECT @MyString as MyOldString, LEFT(@MyString, CHARINDEX('href="', @MyString)+5) + '">.</a>' as MyNewString 
+0

感謝您的嘗試,但它沒有奏效。我在mysql中有基本的知識,所以我只是在phpMyAdmin> sql選項卡上覆制粘貼上面的內容。錯誤是:#1064 - 你的SQL語法有錯誤; – geoplous

+0

噢,好的,如果是mysql,查詢可能需要修改。我在Sqlserver上測試過它。猜猜你可能需要使用instring或類似的代替charindex。我不熟悉mysql。 – Tyron78