字符這是代碼大綱我想使用的功能:MySQL的使用REGEXP捕獲並返回第二,第三和第四字符串
CREATE function get_n_chars (dfrom varchar(9)) returns varchar(9)
READS SQL DATA
begin
declare d varchar(9);
dfrom REGEXP '^.(...)';
d = $1;
limit 1;
return d;
我並不感到驚訝,以得到一個錯誤,沒有人知道正確的語法,或甚至可能嗎?
感謝
你能在平實的語言你正在嘗試做解釋?如果你只是想在字符串中的特定位置獲取字符,爲什麼要使用正則表達式,爲什麼定義一個函數呢? MySQL有內置的功能,可以做到這一點。 –
在這種情況下,[SUBSTRING(dfrom,2,3)'](http://dev.mysql.com/doc/en/string-functions.html#function_substring)有什麼問題? MySQL不支持使用正則表達式模式匹配運算符捕獲字符串部分,但如果絕對必要,您可以[使用UDF](http://www.mysqludf.org/lib_mysqludf_preg/index.php#PREG_CAPTURE_SECTION)。 – eggyal
基本問題是,有一張表格,其公司名稱略有不同,但是屬於同一家公司。例如:'Apple Inc.','Apple Computers'和Apple Incorporate'。我應該清理這張桌子。我需要根據相似的名字找到重複的內容。因此,所有三個「蘋果」都是「重複」,在確定後我需要刪除大部分不完整數據的兩行。所以,我需要顯示這三行與他們的ID號碼,然後刪除兩個。這是我的想法,通過使用內部連接中的函數,我可以找到這些相似的名稱。感謝您的回覆。 – John