1,concate_ws函数
MySQL字符串处理函数concat_ws()和MySQL字符串处理函数concat()类似,但是处理的字符串不太一样,下面就为您详细介绍MySQL字符串处理函数concat_ws()。
concat_ws()函数, 表示concat with separator,即有分隔符的字符串连接
如连接后以逗号分隔
- mysql> select concat_ws(',','11','22','33');
- +-------------------------------+
- | concat_ws(',','11','22','33') |
- +-------------------------------+
- | 11,22,33 |
- +-------------------------------+
- 1 row in set (0.00 sec)
和concat不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL
- mysql> select concat_ws(',','11','22',NULL);
- +-------------------------------+
- | concat_ws(',','11','22',NULL) |
- +-------------------------------+
- | 11,22 |
- +-------------------------------+
- 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字符串函数及其详细解释: 1. `ASCII(str)`:这个函数返回字符串`str`的第一个字符的ASCII码值。如果`str`为空...
以上只是MySQL字符串函数的一部分,实际上还有更多如`INSERT`, `STRCMP`, `REVERSE`, `REPEAT`等,它们在处理和操作字符串时提供了极大的灵活性。了解并熟练掌握这些函数,能有效提高数据库查询和数据处理的效率。
2. **字符串函数** - `CHAR_LENGTH(str)`:计算字符串str的字符数量。 - `CONCAT(s1, s2, ...)`:连接多个字符串。 - `CONCAT_WS(x, s1, s2, ...)`:用分隔符x连接字符串,并在每个字符串之间插入x。 - `INSERT...
本篇主要聚焦于MySQL的一些关键函数,包括字符串函数、数字函数、日期函数和其他特殊函数,以及涉及到的安全问题——UDF(User Defined Function)提权。 首先,我们关注的是MySQL的字符串函数。ASCII(s)函数返回...
24. **CONCAT_WS函数**:使用分隔符连接字符串,`SELECT CONCAT_WS('/', 'A', NULL, 'B', NULL)`的结果是`'A/B'`。 25. **删除列指令**:在MySQL中,删除列的正确语法是`ALTER TABLE ... DROP COLUMN ...`。 26. *...
24. `CONCAT_WS`函数以指定分隔符连接字符串,如果分隔符为空,则忽略空值,所以`CONCAT_WS('/', 'A', NULL, 'B', NULL)`结果是'A/B'。 25. 删除列的SQL语句是`ALTER TABLE ... DROP COLUMN ...`,它允许用户从表...
- **字符串函数**: - `ASCII(str)`:返回字符串的第一个字符的 ASCII 值。 - `BIN(N)`:将整数转换为二进制形式的字符串。 - `BIT_LENGTH(str)`:返回字符串的位长度。 - `CHAR(N, ...)`:返回由多个字符值组成...
- 字符串函数:`ASCII`、`ORD`、`CONV`、`BIN`、`OCT`、`HEX`、`CHAR`、`CONCAT`、`CONCAT_WS`、`LENGTH`、`CHAR_LENGTH`、`BIT_LENGTH`、`LOCATE`、`INSTR`、`LPAD`、`RPAD`、`LEFT`、`RIGHT`、`SUBSTRING`、`MID`...
2. 计算层级:通过`IF`和`LOCATE`函数判断当前节点是否已存在于路径层级字符串中,如果存在则计算层级,否则层级加1。 3. 更新路径层级和节点路径:使用`CONCAT`和`SUBSTRING_INDEX`函数更新路径层级和节点路径字符...