MySQL运算符使用问题

1.使用算术运算符

(1)直接操作数值

SELECT 6+4 加法操作,

          6-4 减法操作,

         6*4 乘法操作,

         6/2 除法操作,

         6%4 求模操作,

        6 MOD 4 求模操作;

(2)操作表中的字段

SELECT ename 雇员, sal 月工资, sal*12 年薪

       FROM t_employee;

 

2.比较运算符

SELECT 1=1 数值比较,

       ‘cjgong’=’cjgong’ 字符串比较,

         1+2=3+3 表达式比较,

         1+2!=3+3 表达式比较;

 

SELECT NULL <=> NULL ‘<=>符号效果’,

          NULL=NULL ‘=符号效果’;

#比较运算符“=”不能操作NULL, 因此NULL=NULL结果为NULL而不是1,而比较运算符“<=>”却可以进行操作,因此结果为1

 

3.特殊功能比较运算符

(1)执行带有“^”模式字符的SQL语句SELECT,实现比较是否以特定字符或字符串开头。

SELECT ‘cjgong’ REGEXP ‘^c’ 特定字符开头,

         ‘cjgongcjgong’REGEXP ‘^cjgong’ 特定字符串开头;

(2)执行带有“$”模式字符的SQL语句SELECT, 实现比较是否以特定字符或字符串结尾。

SELECT ‘cjgong’ REGEXP ‘g$’ 特定字符结尾,

          ‘cjgongcjgong’ REGEXP ‘cjgong$’ 特定字符串结尾;

(3)执行带有“.”模式字符的SQL语句SELECT, 实现比较是否包含固定数目的任意字符。

SELECT ‘cjgong’ REGEXP ‘^c….g$’ 匹配4个任意字符

(4)执行带有“[]”和”[^]”模式字符的SQL语句SELECT, 可以实现比较是否包含指定字符中任意一个和指定字符外任意一个。

SELECT ‘cjgong’ REGEXP ‘[abc]’ 指定字符中字符,

           ‘cjgong’ REGEXP ‘[a-zA-Z]’ 指定字符串中的集合区间,

          ‘cjgong’ REGEXP ‘[^abc]’ 指定字符外字符,

         ‘cjgong’ REGEXP ‘[^a-zA-Z0-9]’ 指定字符外集合区间;

(5)执行带有“*”和”+” 模式字符的SQL语句SELECT, 可以实现比较是否包含多个指定字符。

SELECT ‘cjgong’ REGEXP ‘a*g’, 匹配字符g之前是否有0或1个a,

     ‘cjgong ’ REGEXP ‘a+g’ 匹配字符g之前是否至少有1个a;

(6)执行带有”|”模式字符的SQL语句SELECT, 可以实现比较是否包含指定字符串中任意一个字符串。

SELECT ‘cjgong’ REGEXP ‘cjg’ 指定单个字符串,

          ‘cjgong’ REGEXP ‘cjc|cjgc’ 指定多个字符串;

(7)执行带有”{M}”或”{M,N}”模式字符的SQL语句SELECT, 可以实现比较是否包含多个指定字符串。

SELECT ‘cccjgong’ REGEXP ‘c{3}’ 匹配3个c,

          ‘cccjgongg’ REGEXP ‘g{2}’ 匹配2个g,

         ‘cgong’ REGEXP ‘cj{1,2}’ 至少1个最多2个,

        ‘cjcjgong’ REGEXP ‘cj{1,2}’ 至少1个最多2个;

 

 

         

 

你可能感兴趣的:(SQL语言及数据仓库操作)