sql與excel、python比較(一)——字符串函數(shù)

1、LENGTH(str):返回字符串的長度

select length('abcd'),length('a'),length('一'),length('一二'),length(1),length(1.23);

excel:LEN

python:len

2、CONCAT(s1,s2...,sn):將s1,s2...,sn連接成字符串

select concat('a','b');

excel:CONCATENATE或者&


python:直接相加

3、CONCAT_WS(sep,s1,s2...,sn):將s1,s2...,sn連接成字符串,并用sep字符間隔

select concat_ws('-','a','b','c');

excel:CONCATENATE或者&

python:直接相加

4、INSERT(str,x,y,instr):將字符串str從第x位置開始,y個字符長的子串替換為字符串instr,返回結(jié)果

select insert('abcd',2,1,'#&');

excel:REPLACE或SUBSTITUTE


python:replace

5、REPLACE(str,str1,str2):在字符串str中用str2替換掉str1

SELECT replace('abcdefg','bcd','#&');

excel、python同上

6、FIND_IN_SET(str,list):分析逗號分隔的list列表,如果發(fā)現(xiàn)str,返回str在list中的位置

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

excel:FIND和MATCH


python:index

7、POSITION(substr in str):返回子串substr在字符串str中第一次出現(xiàn)的位置

select position('b' in 'abcd'),position('e' in 'abcd');

8、LOCATE(substr,str,pos):返回substr字符串在str里pos(起始位置)出現(xiàn)的位置,沒有返回0

select locate('b','abcd'),locate('e','abcd');

9、INSTR(str,substr):返回substr字符串在str出現(xiàn)的位置,沒有返回0

select instr('abcd','b'),instr('abcd','e');

10、LCASE(str)或LOWER(str):返回將字符串str中所有字符改變?yōu)樾懞蟮慕Y(jié)果

select LCASE('ABCD');

excel:LOWER

python:lower

11、UCASE(str)或UPPER(str):返回將字符串str中所有字符改變?yōu)樾懞蟮慕Y(jié)果

select UCASE('abcd');

excel:UPPER

python:upper

12、LEFT(str,x):返回字符串str中最左邊的x個字符

select left('abcd',2);

excel:LEFT

python:切片

13、RIGHT(str,x):返回字符串str中最右邊的x個字符

select right('abcd',2);

excel:RIGHT

python:切片

14、LTRIM(str):從字符串str中切掉開頭的空格

select ltrim('   ABCD');

15、RTRIM(str):去掉字符串str尾部的空格

select rtrim('ABCD    ');

16、TRIM(str):去掉字符串str前后的空格

select trim('    ABCD    ');

excel:TRIM

python:strip

17、LPAD(str1,x,str2):在str1前填充str2,填充后字符串總長度為x

select lpad('abc',8,'#-');

python:直接加

18、RPAD(str1,x,str2):在str1前填充str2,填充后字符串總長度為x

select rpad('abc',8,'#-');

python:直接加

19、REPEAT(str,x):將str重復(fù)x次

select repeat('SQL',3);

excel:REPT

python:直接*

20、REVERSE(str):顛倒字符串str

select reverse('SQL');

excel:需要VBA

python:切片的方式

21、STRCMP(s1,s2):比較字符串s1和s2,s1>s2返回1,s1=s2,返回0,s1<s2返回-1

strcmp('abc', 'abc'),strcmp('abc', 'abb'),strcmp('abc', 'abd'),strcmp('abc', 'a');

excel:EXACT

python:is或==

22、GROUP_CONCAT(col):返回由屬于一組的列值連接組合而成的結(jié)果

創(chuàng)建一張表

create table a(
people varchar(5) not null,
word varchar(10) not null
);

insert into a(people,word)
values('lily','I'),
      ('lily','love'),
      ('lily','python'),
      ('lucy','Java'),
      ('lucy','is'),
      ('lucy','better');

select * from a;
select people,group_concat(word,'-') from a
group by people;

python:聚合join

創(chuàng)建一個表

import pandas as pd
a=pd.DataFrame([['lily','I'],['lily','love'],['lily','python'],['lucy','Java'],['lucy','is'],['lucy','better']],columns=['people','word'])
a
a.groupby(['people']).apply(lambda x:' '.join(x.word.tolist())).reset_index()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在C語言中,五種基本數(shù)據(jù)類型存儲空間長度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 4,007評論 0 2
  • 本節(jié)要介紹的是Python里面常用的幾種數(shù)據(jù)結(jié)構(gòu)。通常情況下,聲明一個變量只保存一個值是遠(yuǎn)遠(yuǎn)不夠的,我們需要將一組...
    小黑y99閱讀 65,588評論 0 9
  • 一、set集合【了解】 1.概述 和數(shù)學(xué)上的集合基本是一樣的,特點(diǎn):不允許有重復(fù)元素,可以進(jìn)行交集,并集,差集的運(yùn)...
    墨雨love薏雪閱讀 745評論 0 0
  • version():mysql版本user():用戶名database():數(shù)據(jù)庫名@@datadir:讀取數(shù)據(jù)庫...
    lokisteven閱讀 1,155評論 0 1
  • ASCII(str) 返回字符串 str 中最左邊字符的 ASCII 代碼值。如果該字符串為空字符串,則返回0。如...
    JavaEdge閱讀 533評論 0 1

友情鏈接更多精彩內(nèi)容