一、常量

* 字符串常量

  * 数值常量

  * 十六进制常量

  * 日期时间常量

  * 位字段常量

  * 布尔值

  * NULL值

二、变量

  * 用户变量:用户自定义变量;

  * 系统变量:系统内部定义的变量;

  1.用户变量:

    必须用@开头,多个直接用逗号隔开。根据右边的值确定变量的类型 。   如:set @name="杨",@type=1

    如下:

    mysql> set @name="111"; select * from user where name=@name;
    Query OK, 0 rows affected

    +----+------+----------+------------------+-----------+-----+------------+--------+
    | id | name | password | email | username | sex | profession | remark |
    +----+------+----------+------------------+-----------+-----+------------+--------+
    | 1 | 111 | 123456 | 308248859@qq.com | liuzhijun | 1 | NULL | NULL |
    +----+------+----------+------------------+-----------+-----+------------+--------+

  2.系统变量

    大多数的系统变量应用于其它的SQL时,必须前面加 2个@。

    某些特殊的可以省略这2个@,如:

      * current_date:系统日期;

      * current_time: 系统时间;

      * current_timestamp: 系统日期和时间

      * current_user: SQL用户的名字

    例如:

        

三、运算符:

   1.算术运算:

    

  2.比较运算:

    * =: 1=0 :如果相等返回1(true),如相等返回0(false);null比较都为null

    * <>或 != 不等于

    * <=>:和= 类型,区别是: null=null 返回 1(true).

四、控制语句:

    1. if(条件,满足条件的结果1,不满足的结果2):  如  name=admin的那条记录如下:

         

       * 存储过程或者函数中使用 if,格式为    if 查询条件 then 查询SQL  elseif 查询条件 then 查询SQL else 查询SQL end if;

    2.case语句:可以提供多种结果多选一的情况:

      case 字段名称

        when 1 then 结果1

        when 2 then 结果2

        else 默认结果

      end as 字段别名

    例如:

      

      * 函数和存储过程下的case语句:  

         case

          when 1 then 1SQL

          when 2 then 2SQL

          else 默认SQL

        end case

五、常见的日期和时间函数:

  1.获取当前时间   curdate()、curtime()、now()

  2.获取星期几的函数: dayname(d) / dayofweek(d) / weekday(d)

    

  3.获取月份的函数:month(d)返回d日期的月份,1-12直接。  monthname(d)返回 英文的月份名称

    

  4.获取时间的函数 :  curtime()、current_time()获取当前系统时间。  hour(t)获取t的小时    minute(t)获取t的分钟    second(t)t的秒钟

    

  

  5. datediff(d1,d2)函数:返回 d1-d2之间的天数(d1到d2隔了多少天?)

    

  6. adddate(d,n)函数: 返回 d+n天 后的日期。(n可以为负,表示前几天)

  7. subdate(d,n)函数:返回 d-n天 后的日期。

  8. addtime(t,n)函数:返回 t+n秒 后的时间。

  9. subtime(t,n)函数: 返回 t-n秒 后的时间。

  10.格式化时间函数:

    * date_format(d,f) : d表示日期,f为格式,如:

      

    * time_format(d,f); d表示时间   f:格式

      

    

    

Mysql 数据库学习笔记02 编程的更多相关文章

  1. MYSQL数据库学习笔记1

      MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...

  2. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  5. Mysql数据库学习笔记之数据库索引(index)

    什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...

  6. MySQL数据库学习笔记<一>

    MySQL基本概念以及简单操作   一.MySQL   MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系 ...

  7. MySQL数据库学习笔记(四)----MySQL聚合函数、控制流程函数(含navicat软件的介绍)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  8. MySQL数据库学习笔记(三)----基本的SQL语句

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  9. mysql 数据库学习笔记一

    一.navicat的引入: (第三方可视化的客户端,方便MySQL数据库的管理和维护)安装网址:https://www.navicat.com.cn/ NavicatTM是一套快速.可靠并价格相宜的数 ...

随机推荐

  1. 有序数列第K小

    有序数列第K小 题目描述 给出两个长度分别为\(n,m\)的单调非递减数列,求出它们合并后的第\(k\)小值. 输入输出格式 输入格式: 第一行三个数,\(n,m,k\)如题意所述: 第二行\(n\) ...

  2. HDOJ(HDU).1045 Fire Net (DFS)

    HDOJ(HDU).1045 Fire Net [从零开始DFS(7)] 点我挑战题目 从零开始DFS HDOJ.1342 Lotto [从零开始DFS(0)] - DFS思想与框架/双重DFS HD ...

  3. HDOJ(HDU).1258 Sum It Up (DFS)

    HDOJ(HDU).1258 Sum It Up (DFS) [从零开始DFS(6)] 点我挑战题目 从零开始DFS HDOJ.1342 Lotto [从零开始DFS(0)] - DFS思想与框架/双 ...

  4. 【BZOJ 2322】[BeiJing2011]梦想封印 利用"环基"+线性基特征值

    很容易想到离线加边并且把环和链拆开搞(就是对于每个终点求出起点到他的路径(其实就是dfs树),然后bzoj2115),而且维护也很简单,然而我们发现不同的终点可能得到相同的值,这就是我们遇到的最大的问 ...

  5. Java编程MapReduce实现WordCount

    Java编程MapReduce实现WordCount 1.编写Mapper package net.toocruel.yarn.mapreduce.wordcount; import org.apac ...

  6. [ldap]ldap相关问题

    背景: ldap数据库要同步,按照如下操作步骤: 1.导出: 使用slapcat,slapcat直接对数据库操作, slapcat 2.将所需的条目取出,生成文件in.ldif 3.在目标机器上导入: ...

  7. 宽度搜索(BFS)中求最短路径问题理解记录

    借助ACM1242题深入理解迷宫类最短路径搜索并记录路径长度的问题及解决方法:这是初次接触优先队列,尤其是不知道该怎样去记忆在结构体重自定义大小比较的符号方向,很容易混淆符号向哪是从大到小排列,向哪是 ...

  8. [Android篇]Android Studio + Genymotion 一夜无眠 ,超级详细版本[请使用新版2.0]

    环境说明:这里很重要,因为我在windows10中吃过很多的亏 操作系统: windows 7 64位系统 JDK 64位 : jdk1.7.0_75 注意我这里吃过亏!都用64位的! Android ...

  9. linux用户管理和文件权限

    linux用户管理和文件权限 新建用户:useradd ftpuser      useradd -g gxx userxx修改密码:passwd ftpuser新增用户组:# groupadd gr ...

  10. C11性能之道:转移和转发

    1.move C++11中可以将左值强制转换为右值,从而避免对象的拷贝来提升性能.move将对象的状态或者所有权从一个对象转移到另一个对象,没有内存拷贝.深拷贝和move的区别如图: 从图可以看出,深 ...