ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

SQL常用语句2——截取字符,连接字符,数据类型的转换

2021-07-27 23:33:50  阅读:191  来源: 互联网

标签:字符 decimal 数据类型 pos num SQL concat


1、substring() 截取字符串,截取数据库某一列字段中的一部分

MySQL: SUBSTR( ), SUBSTRING( )

Oracle: SUBSTR( )
SQL Server: SUBSTRING( ) ;

方法:

SBUSTR(str,pos);
从pos开始的位置,一直截取到最后。

 

SUBSTR(str,pos,len);
从pos开始的位置,len 字符长度(空白也算字符)。

 

2、concat()将多个字符连接成一个字符串

MySQL

方法:

select concat(str1,str2) from t_user;

(其中str1和str2是t_user表的两个字段)

如果 str1为null,str2为"aaa",返回的结果为null,那么则需要这样写:

select concat(ifnull(str1,"defaultvalue"),str2) from t_user

3.类型的转换问题

cast和 convert转换函数(显式)

1、将Int 转为varchar经常用 concat函数,比如concat(8,’0′) 得到字符串 ‘80′。

2、将varchar 转为Int 用 cast(a as signed) a为varchar类型的字符串,signed为整数类型。

 

CAST(xxx AS 类型)  as  列名 from 表名

CONVERT(xxx,类型) as  列名 from 表名

二进制,同带binary前缀的效果 : BINARY

字符型,可带参数 : CHAR()

日期 : DATE

时间: TIME

日期时间型 : DATETIME

浮点数 : DECIMAL

整数 : SIGNED

无符号整数 : UNSIGNED

 

举例

栗子1:将日期转为整数型

表table1

date:2015-11-03 15:31:26

select cast(date as signed) as date from  table1;

结果为:

date:20151103153126

 

栗子2:将整数转为decimal 数据类型

表table2

num:20

select cast(num as decimal(10, 2)) as num from table2

结果为:

num:20.00

解释:decimal 数据类型最多可存储 38 个数字,所有数字都能够放到小数点的右边.decimal 数据类型存储了一个准确(精确)的数字表达法;不存储值的近似值.其中10是小数点左边和右边的数字个数之和(不包括小数点),2代表小数点右边的小数位数或数字个数.decimal(10,2)可以存储8位整数2位小数的数字.

 

标签:字符,decimal,数据类型,pos,num,SQL,concat
来源: https://www.cnblogs.com/bww326/p/15068402.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有