mysql 用户自定义变量
2017-05-23 21:45
405 查看
SQL中可以用变量来操作值、那么问题就来了、mysql中怎么定义一个变量呢?
一、定义变量
1、定义变量的语法:
2、定义一个变量varName
3、浪一把(最好不要太浪,不然受伤的只是自己)
由于"-"号这个字符中sql中是用特殊意义的、所以不能这样搞;我们最希望的是解释器把var-name看成一个整体;所以我们要用引号把它们引起来
4、除了set 之外还有什么方式可以给一个变量赋值吗?在这方面我只见过select 有这个能力了
看起来select 在这方面也还是比较好用的呀! 大兄弟、我根你讲呀! select 赋值是有坑的,由于select 中各个赋值表达式的执行
顺序是并行的;所以你不知道哪个赋值表达式先执行 如:
二、说了这么多,那么一个变量可以接受哪些类型的值呢?
1、integer, decimal, floating-point, binary or nonbinary string, or NULL
----
一、定义变量
1、定义变量的语法:
set @var_name=expr [,@var_name=expr] ...
2、定义一个变量varName
mysql> set @varName='hello world'; Query OK, 0 rows affected (0.01 sec) mysql> select @varName; +-------------+ | @varName | +-------------+ | hello world | +-------------+ 1 row in set (0.00 sec)
3、浪一把(最好不要太浪,不然受伤的只是自己)
set @var-name='hello world'; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-name='hello world'' at line 1
由于"-"号这个字符中sql中是用特殊意义的、所以不能这样搞;我们最希望的是解释器把var-name看成一个整体;所以我们要用引号把它们引起来
mysql> set @`var-name`='hello world'; Query OK, 0 rows affected (0.00 sec) mysql> select @`var-name`; +-------------+ | @`var-name` | +-------------+ | hello world | +-------------+ -- 作人哪最好不要太浪、伤的是自己
4、除了set 之外还有什么方式可以给一个变量赋值吗?在这方面我只见过select 有这个能力了
select @varCount:=count(*) from t; -- 注意这个时候不能用 "="号了 这个时候只能用":=" 来赋值
看起来select 在这方面也还是比较好用的呀! 大兄弟、我根你讲呀! select 赋值是有坑的,由于select 中各个赋值表达式的执行
顺序是并行的;所以你不知道哪个赋值表达式先执行 如:
select @varName:=100,@varName:=@varName+1,@varName:=@varName+2; +---------------+----------------------+----------------------+ | @varName:=100 | @varName:=@varName+1 | @varName:=@varName+2 | +---------------+----------------------+----------------------+ | 100 | 101 | 103 | +---------------+----------------------+----------------------+ -- 就算这个结果看起来是你想要的,你也不能这么写,因为它不能保证每次的结果都是这样的 -- 这样你代码的执行结果就靠运气了
二、说了这么多,那么一个变量可以接受哪些类型的值呢?
1、integer, decimal, floating-point, binary or nonbinary string, or NULL
----
相关文章推荐
- mysql中关于用户自定义的变量
- mysql用户自定义变量
- Mysql User-Defined Variables 用户自定义变量 SET or DECLARE
- mysql 用户自定义变量
- 深入MySQL用户自定义变量:使用详解及其使用场景案例
- 如何在.Net的MySqlCommand里面使用MySql用户自定义变量?
- MYSQL的用户变量(@)和系统变量(@@)
- mysql用户变量
- Shell基础-Bash变量-用户自定义变量
- mysql用户变量和set语句
- mysql用户变量和全局变量
- 用户自定义变量 内置变量
- mysql变量(用户+系统)
- 支持用户自定义变量的PowerBuilder表达式求值
- linux用户覆盖全局(自定义)变量环境
- shell编程-用户自定义变量
- MYSQL的用户变量(@)和系统变量(@@)
- MySQL中使用自定义变量 编写偷懒的UNION示例
- MySQL的用户变量
- linux用户覆盖全局(自定义)变量环境