2013-08-21 107 views
-3

我有一個字段中有成千上萬的行,其中很多行包含-作爲最後一個字符。我需要使用這些值作爲URL,所以這些URL因此被破壞。有人可以給我的SQL命令爲phpmyadmin刪除它們而不刪除其他連字符?當它是最後一個字符時刪除連字符

回答

2

我打算假設你正在使用MySQL ...因爲你沒有指定任何東西。儘管如此,這可能也會移植到其他SQL版本。無論如何,將其解釋爲僞SQL代碼,你應該找到某個地方。

嘗試這樣:

SELECT 
    CASE WHEN RIGHT(My_Col, 1) = '-' THEN SUBSTR(My_Col, 0, LENGTH(My_Col)-2) 
    ELSE My_Col AS My_Valid_Link 
FROM 
    My_Table 
+0

是的,它是MySQL的,我安裝的WordPress。剛剛嘗試過SELECT CASE WHEN RIGHT(post_name,1)=' - 'THEN SUBSTR(post_name,0,LENGTH(post_name)-2) ELSE post_name FROM wp_posts,並且出現此錯誤:#1064 - You have an您的SQL語法錯誤;請檢查與您的MySQL服務器版本相對應的手冊,以便在第4行的'FROM wp_posts LIMIT 0,30'附近使用正確的語法。 –

+0

有什麼限制?我只需要刪除所有連字符,當他們是一個值中的最後一個字符,在所有行中沒有限制 –

+0

我什麼都不明白,這是不可能與此phpmyadmin版本刪除 - 當它的最後一個字符或什麼?有人可以給我正確的代碼嗎?表名是wp_posts列名post_name –

相關問題