mysql的千百问
1、mysql存储过程中,变量前面加@是什么意思?为什么不需要定义就可以用?
答:1、@是用户自定义变量,@@是系统定义变量。
2、在MySQL存储过程变量前加@符号代表会话变量,作用域是当前登陆的帐户,DECLARE申明的变量只在存储过程内部有效。
2、mysql变量的定义?
https://www.cnblogs.com/gavin110-lgy/p/5772577.html
https://www.cnblogs.com/genialx/p/5932558.html
3、MySql中CAST函数
mysql中cast用法
语法:CAST( value AS type )
type的类型有
value | 描述 |
---|---|
DATE | 日期,格式为 'YYYY-MM-DD'. |
DATETIME | 日期加具体的时间,格式为 'YYYY-MM-DD HH:MM:SS'. |
TIME | 时间,格式为 'HH:MM:SS'. |
CHAR | 字符型 |
SIGNED | int |
UNSIGNED | 无符号int |
BINARY | 二进制型 |
DECIMAL | float型 |
select cast(20.3456 as decimal(10, 2)) as num
//结果:20.35
select cast('2019-03-08 15:31:26' as datetime ) as date
//结果:2019-03-08 15:31:26
select cast('2019-03-08 15:31:26' as date ) as date
//结果:2019-03-08
select cast('2019-03-08 15:31:26' as time ) as date
//结果:15:31:26
select cast('2015-11-03 15:31:26' as char ) as date
//结果:2015-11-03 15:31:26
mysql中cast() 和convert()的用法讲解
一、在mysql操作中我们经常需要对数据进行类型转换。此时我们应该使用的是cast()或convert()。
二、两者的对比
相同点:都是进行数据类型转换,实现的功能基本等同
不同点:两者的语法不同,cast(value as type) 、 convert(value,type)