Mysql语法

一、截取字符

  • 1. 字符串左截取:left(str, length)
  • 2. 字符串右截取:right(str, length)
  • 3. 字符串定位截取:substring(str, pos); substring(str, pos, len)
    • 3.1 从字符串的第4个字符位置开始取,直到结束。
    • 3.2 从字符串的第1 个字符位置开始取,只取 10 个字符。
    • 3.3 从字符串的第4个字符位置(倒数)开始取,直到结束。
    • 3.4 从字符串的第4个字符位置(倒数)开始取,只取2个字符。
  • 4. 字符串索引截取:substring_index(str,delim,count)
    • 4.1 截取第二个’.’之前的所有字符。
    • 4.2 截取第二个’.'(倒数)之后的所有字符。
    • 4.3 如果在字符串中找不到delim参数指定的值,就返回整个字符串
  • 1. 转数字类型

1. 字符串左截取:left(str, length)

select left(‘2017-11-14T16:00:00.000Z’, 3) FROM DUAL

结果:201

2. 字符串右截取:right(str, length)

select right(‘2017-11-14T16:00:00.000Z’, 3) FROM DUAL

结果:00Z

实例:

查询某个字段后两位字符

select right(last3, 2) as last2 from historydata limit 10;

从应该字段取后两位字符更新到另外一个字段

update historydata set last2=right(last3, 2);

3. 字符串定位截取:substring(str, pos); substring(str, pos, len)

3.1 从字符串的第4个字符位置开始取,直到结束。

select substring(‘2017-11-14T16:00:00.000Z’, 4) FROM DUAL

结果:7-11-14T16:00:00.000Z

3.2 从字符串的第1 个字符位置开始取,只取 10 个字符。

select substring(‘2017-11-14T16:00:00.000Z’, 1,10) FROM DUAL

结果:2017-11-14

3.3 从字符串的第4个字符位置(倒数)开始取,直到结束。

select substring(‘2017-11-14T16:00:00.000Z’, -4) FROM DUAL

结果:000Z

3.4 从字符串的第4个字符位置(倒数)开始取,只取2个字符。

select substring(‘2017-11-14T16:00:00.000Z’, -4,2) FROM DUAL

结果:00

我们注意到在函数 substring(str,pos, len)中,pos可以是负值,但len不能取负值。

4. 字符串索引截取:substring_index(str,delim,count)

4.1 截取第二个’.’之前的所有字符。

select substring_index(‘www.example.com’, ‘.’, 2);

结果:www.example

4.2 截取第二个’.'(倒数)之后的所有字符。

select substring_index(‘www.example.com’, ‘.’, -2);

结果:example.com

4.3 如果在字符串中找不到delim参数指定的值,就返回整个字符串

select substring_index(‘www.example.com’, ‘.coc’, 1);

结果:www.example.com

二、类型转换

  • 1. 字符串左截取:left(str, length)
  • 2. 字符串右截取:right(str, length)
  • 3. 字符串定位截取:substring(str, pos); substring(str, pos, len)
    • 3.1 从字符串的第4个字符位置开始取,直到结束。
    • 3.2 从字符串的第1 个字符位置开始取,只取 10 个字符。
    • 3.3 从字符串的第4个字符位置(倒数)开始取,直到结束。
    • 3.4 从字符串的第4个字符位置(倒数)开始取,只取2个字符。
  • 4. 字符串索引截取:substring_index(str,delim,count)
    • 4.1 截取第二个’.’之前的所有字符。
    • 4.2 截取第二个’.'(倒数)之后的所有字符。
    • 4.3 如果在字符串中找不到delim参数指定的值,就返回整个字符串
  • 1. 转数字类型

1. 转数字类型

用“+”运算符,语法SELECT '值'+0

三、字符串拼接

  • 1. 字符串左截取:left(str, length)
  • 2. 字符串右截取:right(str, length)
  • 3. 字符串定位截取:substring(str, pos); substring(str, pos, len)
    • 3.1 从字符串的第4个字符位置开始取,直到结束。
    • 3.2 从字符串的第1 个字符位置开始取,只取 10 个字符。
    • 3.3 从字符串的第4个字符位置(倒数)开始取,直到结束。
    • 3.4 从字符串的第4个字符位置(倒数)开始取,只取2个字符。
  • 4. 字符串索引截取:substring_index(str,delim,count)
    • 4.1 截取第二个’.’之前的所有字符。
    • 4.2 截取第二个’.'(倒数)之后的所有字符。
    • 4.3 如果在字符串中找不到delim参数指定的值,就返回整个字符串
  • 1. 转数字类型

CONCAT(string1,string2,…)

你可能感兴趣的:(mysql,数据库)