博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql 用户自定义变量
阅读量:5902 次
发布时间:2019-06-19

本文共 1620 字,大约阅读时间需要 5 分钟。

SQL中可以用变量来操作值、那么问题就来了、mysql中怎么定义一个变量呢?

 

一、定义变量

  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

 

----

转载于:https://www.cnblogs.com/JiangLe/p/6896329.html

你可能感兴趣的文章
Linux/Centos 重置Mysql root用户密码
查看>>
[C语言]unicode与utf-8编码转换(一)
查看>>
利用PDO导入导出数据库
查看>>
DDR3
查看>>
分支 统计字数
查看>>
艾级计算机的发展与挑战
查看>>
RocketMQ事务消息实战
查看>>
mysql-mmm-2.2.1安装手册
查看>>
搭建yum源服务器
查看>>
delphi使用ado导出excel
查看>>
linux 命令详解 二十三
查看>>
IT职场人生系列之二:大学生活
查看>>
手把手教你做出好看的文本输入框
查看>>
zabbix 3.2.7 (源码包)安装部署
查看>>
vsCode 快捷键、插件
查看>>
vue-validator(vue验证器)
查看>>
jQuery Ajax MVC 下拉框联动
查看>>
html
查看>>
c#创建文件夹
查看>>
Hibernate事务代码规范写法
查看>>