搜索
查看: 1462|: 0

【MySql】SQL_字符操作函数

[复制链接]

191

主题

18

回帖

694

积分

高级会员

积分
694
发表于 2014-10-20 15:59:07 | 显示全部楼层 |阅读模式

思维导图:

用简单的例子演示,如下列举,用最简单的操作体会字符操作函数的用法:

concat函数
  1. SQL> select ename,job,concat(ename,job) from emp;
  2. ENAME      JOB       CONCAT(ENAME,JOB)
  3. ---------- --------- -------------------
  4. SMITH      CLERK     SMITHCLERK
  5. ALLEN      DBA       ALLENDBA
  6. WARD       DBA       WARDDBA
  7. JONES      MANAGER   JONESMANAGER
  8. MARTIN     DBA       MARTINDBA
  9. BLAKE      DBA       BLAKEDBA
  10. CLARK      MANAGER   CLARKMANAGER
  11. SCOTT      ANALYST   SCOTTANALYST
  12. KING       PRESIDENT KINGPRESIDENT
  13. TURNER     DBA       TURNERDBA
  14. ADAMS      CLERK     ADAMSCLERK
  15. JAMES      DBA       JAMESDBA
  16. FORD       ANALYST   FORDANALYST
  17. MILLER     CLERK     MILLERCLERK
  18. 14 rows selected
复制代码
  1. SQL> select ename,job,concat(ename,'s job is ' || job) from emp;
  2. ENAME      JOB       CONCAT(ENAME,'SJOBIS'||JOB)
  3. ---------- --------- ----------------------------
  4. SMITH      CLERK     SMITHs job is CLERK
  5. ALLEN      DBA       ALLENs job is DBA
  6. WARD       DBA       WARDs job is DBA
  7. JONES      MANAGER   JONESs job is MANAGER
  8. MARTIN     DBA       MARTINs job is DBA
  9. BLAKE      DBA       BLAKEs job is DBA
  10. CLARK      MANAGER   CLARKs job is MANAGER
  11. SCOTT      ANALYST   SCOTTs job is ANALYST
  12. KING       PRESIDENT KINGs job is PRESIDENT
  13. TURNER     DBA       TURNERs job is DBA
  14. ADAMS      CLERK     ADAMSs job is CLERK
  15. JAMES      DBA       JAMESs job is DBA
  16. FORD       ANALYST   FORDs job is ANALYST
  17. MILLER     CLERK     MILLERs job is CLERK
  18. 14 rows selected
复制代码

substr函数
  1. SQL> select ename,concat(ename,job),length(ename),instr(ename,'a') from emp where substr(job,1,5)='ANALY';
  2. ENAME      CONCAT(ENAME,JOB)   LENGTH(ENAME) INSTR(ENAME,'A')
  3. ---------- ------------------- ------------- ----------------
  4. SCOTT      SCOTTANALYST                    5                0
  5. FORD       FORDANALYST                     4                0
复制代码
length函数
  1. SQL> select ename,length(ename) from emp;
  2. ENAME      LENGTH(ENAME)
  3. ---------- -------------
  4. SMITH                  5
  5. ALLEN                  5
  6. WARD                   4
  7. JONES                  5
  8. MARTIN                 6
  9. BLAKE                  5
  10. CLARK                  5
  11. SCOTT                  5
  12. KING                   4
  13. TURNER                 6
  14. ADAMS                  5
  15. JAMES                  5
  16. FORD                   4
  17. MILLER                 6
  18. 14 rows selected
复制代码

instr函数
  1. SQL> select ename,instr(ename,'A') from emp ;
  2. ENAME      INSTR(ENAME,'A')
  3. ---------- ----------------
  4. SMITH                     0
  5. ALLEN                     1
  6. WARD                      2
  7. JONES                     0
  8. MARTIN                    2
  9. BLAKE                     3
  10. CLARK                     3
  11. SCOTT                     0
  12. KING                      0
  13. TURNER                    0
  14. ADAMS                     1
  15. JAMES                     2
  16. FORD                      0
  17. MILLER                    0
  18. 14 rows selected
复制代码
  1. SQL> select ename,concat(ename,job),length(ename),instr(ename,'a') from emp;
  2. ENAME      CONCAT(ENAME,JOB)   LENGTH(ENAME) INSTR(ENAME,'A')
  3. ---------- ------------------- ------------- ----------------
  4. SMITH      SMITHCLERK                      5                0
  5. ALLEN      ALLENDBA                        5                0
  6. WARD       WARDDBA                         4                0
  7. JONES      JONESMANAGER                    5                0
  8. MARTIN     MARTINDBA                       6                0
  9. BLAKE      BLAKEDBA                        5                0
  10. CLARK      CLARKMANAGER                    5                0
  11. SCOTT      SCOTTANALYST                    5                0
  12. KING       KINGPRESIDENT                   4                0
  13. TURNER     TURNERDBA                       6                0
  14. ADAMS      ADAMSCLERK                      5                0
  15. JAMES      JAMESDBA                        5                0
  16. FORD       FORDANALYST                     4                0
  17. MILLER     MILLERCLERK                     6                0
  18. 14 rows selected
复制代码

lpad函数
  1. SQL> select ename,lpad(ename,10,'-') from emp;
  2. ENAME      LPAD(ENAME,10,'-')
  3. ---------- --------------------
  4. SMITH      -----SMITH
  5. ALLEN      -----ALLEN
  6. WARD       ------WARD
  7. JONES      -----JONES
  8. MARTIN     ----MARTIN
  9. BLAKE      -----BLAKE
  10. CLARK      -----CLARK
  11. SCOTT      -----SCOTT
  12. KING       ------KING
  13. TURNER     ----TURNER
  14. ADAMS      -----ADAMS
  15. JAMES      -----JAMES
  16. FORD       ------FORD
  17. MILLER     ----MILLER
  18. 14 rows selected
复制代码

trim函数
  1. SQL> select trim('s' from 'sdfde') from dual;
  2. TRIM('S'FROM'SDFDE')
  3. --------------------
  4. dfde

  5. SQL> select trim('s' from 'sdsfsde') from dual;
  6. TRIM('S'FROM'SDSFSDE')
  7. ----------------------
  8. dsfsde

  9. SQL> select trim('s' from 'ssdsfsde') from dual;
  10. TRIM('S'FROM'SSDSFSDE')
  11. -----------------------
  12. dsfsde
复制代码






您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大数据中国微信

QQ   

版权所有: Discuz! © 2001-2013 大数据.

GMT+8, 2024-11-15 21:23 , Processed in 0.088275 second(s), 24 queries .

快速回复 返回顶部 返回列表