MySQL支持定义自己的变量。这些变量可以被设置为查询结果,这使我们可以方便地把一些值存储起来供今后查询使用。

mysql> SELECT @HisName:= name FROM student WHERE student_id=;
+-----------------+
| @HisName:= name |
+-----------------+
| Lily |
+-----------------+
row in set (0.01 sec) mysql> SELECT * FROM student WHERE name=@HisName;
+------+-----+------------+
| name | sex | student_id |
+------+-----+------------+
| Lily | F | |
+------+-----+------------+
row in set (0.00 sec)

  

  自定义变量的语法为"@变量名" 。在SELECT 语句里,赋值语法是形如 "@变量名:=值" 的表达式。因此,上面的第一个查询主要负责把 student_id = 3 的学生的名字查找出来,并把它赋值给一个名为 @HisName 的变量。这条SELECT 语句的查询结果仍会被显示出来;而将查询结果赋值给变量的过程并不会阻碍该查询的输出显示。第二个查询仍会引用该变量,并在 student 表里查找 name 值等于该变量的那些行。

  也可以使用 SET 语句来对变量进行赋值。此时,"=" 和 ":=" 都可以用作赋值运算符:

mysql> SET @today=CURDATE();
Query OK, rows affected (0.00 sec) mysql> SET @one_week_ago:=DATE_SUB(@today,INTERVAL DAY);
Query OK, rows affected (0.00 sec) mysql> SELECT @today,@one_week_ago;
+------------+---------------+
| @today | @one_week_ago |
+------------+---------------+
| -- | -- |
+------------+---------------+
row in set (0.00 sec)

MySQL数据库(3)----设置和使用自定义变量的更多相关文章

  1. mysql 数据库远程访问设置方法

    摘自: http://www.iteye.com/topic/418151 mysql数据库远程访问设置方法 1.修改localhost更改 "mysql" 数据库里的 " ...

  2. Mysql数据库中设置root密码的命令及方法

    我们都知道通常PHP连接 Mysql都是通过root用户名和密码连接,默认情况下在Mysql安装时root初始密码为空,在安装使用PHP开源系统时,都需要填写连接Mysql数据库的用户名和密码,此时当 ...

  3. MySQL数据库唯一性设置(unique index)

    1,命令行操作 分为两种.一种是在建表时就想好要加上唯一性,另一种是在后期才发现需要设置唯一性. 建表时: CREATE TABLE `t_user` ( `Id` int(11) NOT NULL ...

  4. MySQL 查询排除指定字段、自定义变量、动态执行SQL

    今天在项目中,要查询一个表.这个表中有几十个字段.但是要把其中的一个特殊处理. 这个该怎么办呢?查来查去,SQL 中没有排除某一些字段的语句,只能单独写一些语句来处理: 基本思路:对于MySQL数据库 ...

  5. mysql数据库远程访问设置方法

    1. 修改方式1代码改表法.  可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库 ...

  6. mysql数据库如何设置表名大小写不敏感?

    转自:https://blog.csdn.net/iefreer/article/details/8313839 在跨平台的程序设计中要注意到mysql的一些系统变量在windows和linux上的缺 ...

  7. centos7下使用yum安装mysql数据库以及设置远程访问

    CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1. 下载mysql的repo源 $ wget http://repo.mysql.com ...

  8. mysql数据库编码设置成utf-8,避免出现乱码

    设置默认编码为utf8:set names utf8;设置数据库db_name默认为utf8:ALTER DATABASE `db_name` DEFAULT CHARACTER SET utf8 C ...

  9. Mac 配置java版本 ---- MySql数据库权限设置 --- openfire

    java -version 显示java 版本 sudo su - root 切换身份 cd /usr/local/openfire 进入openfire目录 cd bin/ 进入 bin vim o ...

随机推荐

  1. SpringBoot入门(IDEA篇)(三)

    一.什么是JPA JPA(Java Persistence API)定义了一系列对象持久化的标准,目前实现这一规范的产品有Hibernate.TopLink等. 二.Mysql数据库示例 1.在app ...

  2. pydicom读取dicom文件报错

    之前采用pydicom读取dicom文件一切都很正常,不过最近读取一批数据的时候,会报错 读取代码 file = pydicom.read_file(filepath) data = file.pix ...

  3. 51nod 1812 树的双直径 题解【树形DP】【贪心】

    老了-稍微麻烦一点的树形DP都想不到了. 题目描述 给定一棵树,边权是整数 \(c_i\) ,找出两条不相交的链(没有公共点),使得链长的乘积最大(链长定义为这条链上所有边的权值之和,如果这条链只有 ...

  4. Vue.js 使用注意事项

    Vue.js 使用注意事项 1 过滤器主要用于简单的文本转换,如果要实现复杂的数据变换,应使用计算属性 指令的使用 v-bind基本用于HTML元素上的属性,如id.class.href.src等 v ...

  5. centos 7 下安装nginx-1.15.7

    安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境. 一. gcc 安装安装 nginx 需要先 ...

  6. IE11在使用get方式提交没有进行请求的bug问题

    在做iemsc项目的时候,测试提交了一个bug问题,在发布新闻成功后,自动刷新列表的时候,不进行刷新,但是在谷歌上面又不会出现这种问题, 原因: 发现请求的时候用的get请求,因为不同的浏览器的请求机 ...

  7. HTML 三角符号

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. PyQt5 应用在 TeamViewer 下无法使用全屏模式

    PyQt5 应用在 TeamViewer 下无法使用全屏模式 问题描述 使用 PyQt5 (版本为 5.7)中的 QtWebEngineView 构建的桌面应用,部署到远程机器(Windows 7 平 ...

  9. SSM批量插入和修改实现实例

    1.Service,自己对代码逻辑进行相应处理 /* 新增订单产品信息 */ List<DmsOrderProduct> insertOrderProductList = Lists.ne ...

  10. 常用工具说明--Maven使用说明

    什么是Maven? 如今我们构建一个项目需要用到很多第三方的类库,如写一个使用Spring的Web项目就需要引入大量的jar包.一个项目Jar包的数量之多往往让我们瞠目结舌,并且Jar包之间的关系错综 ...