mysql幫助 自己總結的常用函式

2021-10-31 22:11:34 字數 4787 閱讀 9357

→ ''

11. position(substr in str)

返回子串substr在字串str第乙個出現的位置,如果substr不是在str裡面,返回0.

mysql> select locate('bar', 'foobarbar');

-> 4

mysql> select locate('xbar', 'foobar');

-> 0

12. locate(substr,str,pos)

返回子串substr在字串str第乙個出現的位置,從位置pos開始。如果substr不是在str裡面,返回0。

mysql> select locate('bar', 'foobarbar',5);

-> 7

這函式是多位元組可靠的。

13. instr(str,substr)

返回子串substr在字串str中的第乙個出現的位置。這與有2個引數形式的locate()相同,除了引數被顛倒。

mysql> select instr('foobarbar', 'bar');

-> 4

mysql> select instr('xbar', 'foobar');

-> 0

14. lpad(str,len,padstr)

返回字串str,左面用字串padstr填補直到str是len個字元長。

mysql> select lpad('hi',4,'??');

-> '??hi'

rpad(str,len,padstr)

返回字串str,右面用字串padstr填補直到str是len個字元長。

mysql> select rpad('hi',5,'?');

-> 'hi???'

left(str,len)

返回字串str的最左面len個字元。

mysql> select left('foobarbar', 5);

-> 'fooba'

該函式是多位元組可靠的。

right(str,len)

返回字串str的最右面len個字元。

mysql> select right('foobarbar', 4);

-> 'rbar'

該函式是多位元組可靠的。

substring(str,pos,len)

substring(str from pos for len)

mid(str,pos,len)

從字串str返回乙個len個字元的子串,從位置pos開始。使用from的變種形式是ansi sql92語法。

mysql> select substring('quadratically',5,6);

-> 'ratica'

該函式是多位元組可靠的。

substring(str,pos)

substring(str from pos)

從字串str的起始位置pos返回乙個子串。

mysql> select substring('quadratically',5);

-> 'ratically'

mysql> select substring('foobarbar' from 4);

-> 'barbar'

該函式是多位元組可靠的。

substring_index(str,delim,count)

返回從字串str的第count個出現的分隔符delim之後的子串。如果count是正數,返回最後的分隔符到左邊(從左邊數) 的所有字元。如果count是負數,返回最後的分隔符到右邊的所有字元(從右邊數)。

mysql> select substring_index('', '.', 2);

-> 'www.mysql'

mysql> select substring_index('', '.', -2);

-> ''

該函式對多位元組是可靠的。

ltrim(str)

返回刪除了其前置空格字元的字串str。

mysql> select ltrim(' barbar');

-> 'barbar'

rtrim(str)

返回刪除了其拖後空格字元的字串str。

mysql> select rtrim('barbar ');

-> 'barbar'

該函式對多位元組是可靠的。

trim([[both | leading | trailing] [remstr] from] str)

返回字串str,其所有remstr字首或字尾被刪除了。如果沒有修飾符both、leading或trailing給出,both被假定。如果remstr沒被指定,空格被刪除。

mysql> select trim(' bar ');

-> 'bar'

mysql> select trim(leading 'x' from '***bar***');

-> 'bar***'

mysql> select trim(both 'x' from '***bar***');

-> 'bar'

mysql> select trim(trailing 'xyz' from 'barxxyz');

-> 'barx'

該函式對多位元組是可靠的。

soundex(str)

返回str的乙個同音字串。聽起來「大致相同」的2個字串應該有相同的同音字串。乙個「標準」的同音字串長是4個字元,但是soundex()函式返回乙個任意長的字串。

你可以在結果上使用substring()得到乙個「標準」的同音串。所有非數字字母字元在給定的字串中被忽略。所有在a-z之外的字元國際字母被當作母音。

mysql> select soundex('hello');

-> 'h400'

mysql> select soundex('quadratically');

-> 'q36324'

space(n)

返回由n個空格字元組成的乙個字串。

mysql> select space(6);

-> ' '

replace(str,from_str,to_str)

返回字串str,其字串from_str的所有出現由字串to_str代替。

mysql> select replace('', 'w', 'ww');

-> ''

該函式對多位元組是可靠的。

repeat(str,count)

返回由重複counttimes次的字串str組成的乙個字串。如果count <= 0,返回乙個空字串。如果str或count是null,返回null。

mysql> select repeat('mysql', 3);

-> 'mysqlmysqlmysql'

reverse(str)

返回顛倒字元順序的字串str。

mysql> select reverse('abc');

-> 'cba'

該函式對多位元組可靠的。

insert(str,pos,len,newstr)

返回字串str,在位置pos起始的子串且len個字元長得子串由字串newstr代替。

mysql> select insert('quadratic', 3, 4, 'what');

-> 'quwhattic'

該函式對多位元組是可靠的。

elt(n,str1,str2,str3,...)

如果n= 1,返回str1,如果n= 2,返回str2,等等。如果n小於1或大於引數個數,返回null。elt()是field()反運算。

mysql> select elt(1, 'ej', 'heja', 'hej', 'foo');

-> 'ej'

mysql> select elt(4, 'ej', 'heja', 'hej', 'foo');

-> 'foo'

field(str,str1,str2,str3,...)

返回str在str1, str2, str3, ...清單的索引。如果str沒找到,返回0。field()是elt()反運算。

mysql> select field('ej', 'hej', 'ej', 'heja', 'hej', 'foo');

-> 2

mysql> select field('fo', 'hej', 'ej', 'heja', 'hej', 'foo');

-> 0

find_in_set(str,strlist)

如果字串str在由n子串組成的表strlist之中,返回乙個1到n的值。乙個字串表是被「,」分隔的子串組成的乙個字串。如果第乙個引數是乙個常數字串並且第二個引數是一種型別為set的列,find_in_set()函式被優化而使用位運算!

如果str不是在strlist裡面或如果strlist是空字串,返回0。如果任何乙個引數是null,返回null。如果第乙個引數包含乙個「,」,該函式將工作不正常。

mysql> select find_in_set('b','a,b,c,d');

-> 2

make_set(bits,str1,str2,...)

返回乙個集合 (包含由「,」字元分隔的子串組成的乙個字串),由相應的位在bits集合中的的字串組成。str1對應於位0,str2對應位1,等等。在str1, str2, ...

中的null串不新增到結果中。

mysql> select make_set(1,'a','b','c');

-> 'a'

mysql> select make_set(1 | 4,'hello','nice','world');

MySql常用命令總結

mysql常用操作基本操作,以下都是mysql5.0下測試通過首先說明下,記住在每個命令結束時加上 分號 1.匯出整個資料庫 mysqldump u 使用者名稱 p default character set latin1 資料庫名 匯出的檔名 資料庫預設編碼是latin1 mysqldump u ...

MySql常用命令總結

mysql常用操作基本操作,以下都是mysql5.0下測試通過首先說明下,記住在每個命令結束時加上 分號 1.匯出整個資料庫 mysqldump u 使用者名稱 p default character set latin1 資料庫名 匯出的檔名 資料庫預設編碼是latin1 mysqldump u ...

MySql常用命令總結

mysql常用操作基本操作,以下都是mysql5.0下測試通過首先說明下,記住在每個命令結束時加上 分號 1.匯出整個資料庫 mysqldump u 使用者名稱 p default character set latin1 資料庫名 匯出的檔名 資料庫預設編碼是latin1 mysqldump u ...