`

MySQL字符串处理函数concat_ws(),locate()

阅读更多

1,concate_ws函数

 

MySQL字符串处理函数concat_ws()和MySQL字符串处理函数concat()类似,但是处理的字符串不太一样,下面就为您详细介绍MySQL字符串处理函数concat_ws()。

concat_ws()函数, 表示concat with separator,即有分隔符的字符串连接
如连接后以逗号分隔

  1. mysql> select concat_ws(',','11','22','33');  
  2.  
  3. +-------------------------------+  
  4. | concat_ws(',','11','22','33') |  
  5. +-------------------------------+  
  6. | 11,22,33      |  
  7. +-------------------------------+  
  8.        1 row in set (0.00 sec)  

和concat不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL

  1. mysql> select concat_ws(',','11','22',NULL);  
  2. +-------------------------------+  
  3. | concat_ws(',','11','22',NULL) |  
  4. +-------------------------------+  
  5. | 11,22 |  
  6. +-------------------------------+  
  7.        1 row in set (0.00 sec)  

 

2,locate函数

  • LOCATE(substr,str) , LOCATE(substr,str,pos)

第一个语法返回字符串 str中子字符串substr的第一个出现位置。第二个语法返回字符串 str中子字符串substr的第一个出现位置, 起始位置在pos。如若substr 不在str中,则返回值为0。

mysql> SELECT LOCATE('bar', 'foobarbar');

        -> 4

mysql> SELECT LOCATE('xbar', 'foobar');

        -> 0

mysql> SELECT LOCATE('bar', 'foobarbar',5);

        -> 7

 

这个函数支持多字节字元,并且只有当至少有一个参数是二进制字符串时区分大小写。

 

 

 

$query = 'INSERT INTO *PREFIX*hr_jobseeker ('.($jid ? 'id,' : '').'company_id, job_id, source, name,email,phone,date_added)

                values '.$sql.' ON DUPLICATE KEY UPDATE

                job_id=values(job_id),

                source=IF(locate("upload",source),source,concat_ws(",",source,"upload")),

                name=values(name),

                email=values(email),

                phone=values(phone),

                date_added=values(date_added),

 

                id=LAST_INSERT_ID(id)';

 

 

分享到:
评论

相关推荐

    mysql常用字符串函数、字符串处理函数大全

    MySQL字符串函数是数据库操作中非常关键的一部分,它们用于处理和操作文本数据。以下是一些常见的MySQL字符串函数及其详细解释: 1. `ASCII(str)`:这个函数返回字符串`str`的第一个字符的ASCII码值。如果`str`为空...

    MySQL字符串函数详解(推荐)

    以上只是MySQL字符串函数的一部分,实际上还有更多如`INSERT`, `STRCMP`, `REVERSE`, `REPEAT`等,它们在处理和操作字符串时提供了极大的灵活性。了解并熟练掌握这些函数,能有效提高数据库查询和数据处理的效率。

    MySQL函数一览_MySQL函数全部汇总

    2. **字符串函数** - `CHAR_LENGTH(str)`:计算字符串str的字符数量。 - `CONCAT(s1, s2, ...)`:连接多个字符串。 - `CONCAT_WS(x, s1, s2, ...)`:用分隔符x连接字符串,并在每个字符串之间插入x。 - `INSERT...

    第四周-数据库系统功能相关学习-FNjoker-14961

    本篇主要聚焦于MySQL的一些关键函数,包括字符串函数、数字函数、日期函数和其他特殊函数,以及涉及到的安全问题——UDF(User Defined Function)提权。 首先,我们关注的是MySQL的字符串函数。ASCII(s)函数返回...

    MySQL数据库开发答案.docx

    24. **CONCAT_WS函数**:使用分隔符连接字符串,`SELECT CONCAT_WS('/', 'A', NULL, 'B', NULL)`的结果是`'A/B'`。 25. **删除列指令**:在MySQL中,删除列的正确语法是`ALTER TABLE ... DROP COLUMN ...`。 26. *...

    MySQL数据库开发》答案.pdf

    24. `CONCAT_WS`函数以指定分隔符连接字符串,如果分隔符为空,则忽略空值,所以`CONCAT_WS('/', 'A', NULL, 'B', NULL)`结果是'A/B'。 25. 删除列的SQL语句是`ALTER TABLE ... DROP COLUMN ...`,它允许用户从表...

    MySql 参考手册

    - **字符串函数**: - `ASCII(str)`:返回字符串的第一个字符的 ASCII 值。 - `BIN(N)`:将整数转换为二进制形式的字符串。 - `BIT_LENGTH(str)`:返回字符串的位长度。 - `CHAR(N, ...)`:返回由多个字符值组成...

    mysql-cheat-sheet-v1

    - 字符串函数:`ASCII`、`ORD`、`CONV`、`BIN`、`OCT`、`HEX`、`CHAR`、`CONCAT`、`CONCAT_WS`、`LENGTH`、`CHAR_LENGTH`、`BIT_LENGTH`、`LOCATE`、`INSTR`、`LPAD`、`RPAD`、`LEFT`、`RIGHT`、`SUBSTRING`、`MID`...

    SQL如何实现MYSQL的递归查询

    2. 计算层级:通过`IF`和`LOCATE`函数判断当前节点是否已存在于路径层级字符串中,如果存在则计算层级,否则层级加1。 3. 更新路径层级和节点路径:使用`CONCAT`和`SUBSTRING_INDEX`函数更新路径层级和节点路径字符...

Global site tag (gtag.js) - Google Analytics