mysql(3)

  1. 字符串
    字符串指用单引号(‘’’)或双引号(‘"’)引用起来的字符序列。
    引用和转义:(不是很清楚)
    在这里插入图片描述
  2. 数值型
    整数用一系列阿拉伯数字表示,浮点数使用 . 作为十进制间隔符,以上两种类型的数值均可以在前面加一个- 来表示负值。
  3. 日期类型
  4. 十六进制
    十六进制值的默认类型是字符串。用 HEX() 函数将一个字符串或数字转换为十六进制格式的字符串。如果想要确保该值能作为数字处理,可以使用 CAST(…AS UNSIGNED):
mysql> SELECT 0x41,CAST(0x41 AS UNSIGNED);
    -> 'A',65
  1. bool布尔值

  2. null
    对于用 LOAD DATA INFILE 或 SELECT …INTO OUTFILE 执行的文本文件导入或导出操作, NULL 用序列 \N 表示。

  3. 识别符
    数据库、表、索引、列和别名是识别符。

  4. 用户自定义变量
    用户自定义变量具有会话专一性,也就是说,一个客户端定义的变量不能被其它客户端看到或使用,当客户端退出时,该客户端连接的所有变量将自动释放。
    用户变量的形式为 @var_name,其中变量名 var_name 可以由当前字符集中的字母数字字符、.、_和 $ 组成。
    设置用户变量的一个途径是执行 SET 语句:

     SET @var_name = expr [, @var_name = expr] ...
    

    对于 SET 语句,可以使用 = 或 := 作为分配符,分配给每个变量的 expr 可以为整数、实数、字符串或者 NULL 值。

    除了使用 SET 语句也可以为用户变量分配一个值。在这种情况下,分配符必须为 := 而不能用 = ,因为在非 SET 语句中 = 被视为比较操作符:

     mysql> SET @t1=0, @t2=0, @t3=0;
     mysql> SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
    

    在 SELECT 语句中,表达式是在被发送到客户端后才进行计算。这说明在 HAVING、GROUP BY 或者 ORDER BY 子句中,在 SELECT 列表中不能使用将值赋值到变量的表达式。例如,下面的语句不能按期望进行:mysql> SELECT (@aa:=id) AS a,(@aa+3) AS b FROM tbl_name HAVING b=5;
    上面 HAVING 子句中使用 @aa 这个变量引用了 b,但是这并不能按期望生效:@aa 并不是当前行的值,而是前面所选定的行的 id 值。因此一般情况下是不建议在语句的一个部分为用户变量分配一个值而在同一语句的其它部分又使用该变量,这可能会得到期望的结果,当然也可能不会。

  5. 注释


/**/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值