MySql-第七篇单表查询

1、MySQL中可以使用+、-、*、/。

    1》但MySQL中没有提供字符串连接运算符,可以使用concat(a_str,'xxx')进行连接。

    2》在算术表达式中使用null,将会导致整个算术表达式的返回值为null,在字符串连接中也是得到null的结果。

2、一些语法

    1》可以给字段起别名,使用空格或者as然后跟字段别名。如果别名中有空格或者大小写敏感,可以通过为别名添加双引号来实现。

select e_id+5 "My id"
from emp;

    2》还支持以下形式

select 5+4;或者 select 4+5 from dual;

    3》去除重复,使用distinct关键字。去除的是字段组合的重复值,如下面的例子,是e_id、e_name的字段组合是否重复。

select distinct e_id,e_name from emp;

    4》比较运算符:>、>=、=、<=、<、<>,可以比较数值、字符串、日期之间的大小。

    5》特殊的比较运算符。

运算符 含义
expr1 between expr2 and expr3 要求expr1>=expr2且expr2<=expr3
expr1 in(expr2,expr3,expr4,...) 要求expr1等于后面括号里任意一个表达式的值
like 字符串匹配,like后的字符串支持通配符
is null 要求指定值等于null

         like主要用于模糊匹配,它有两个通配符:

            1>下划线“_”:代表一个任意字符。

            2>百分号“%”:代表任意多个字符。

     6》转义字符,MySQL使用的是反斜杠“/”。如上面的两个通配符就可以使用反斜杠进行转义。

     7》is null用于判断某些值是否为空,因为MySQL中null=null返回的是null,而不是布尔值。

        

      8》MySQL提供and、or关键字进行条件的连接。使用not进行取否。

select t.e_name from emp t where not t.e_name like '\_%';

      9》比较运算符、逻辑运算符的优先级

运算符 优先级(优先级小的优先)
所有的比较运算符 1
not 2
and 3
or 4

     10》使用order by排序。默认是按asc排序,desc是降序关键字。排序列可以是列名、列序号、列别名。

order by column_name1 [desc],column_name1 [desc],...

         设置多个排序列,每列的asc、desc必须单独设定,且第一个排序列是首要排序列,即先按照第一排序列排序后,才到第二排序列等等。

原文地址:https://www.cnblogs.com/ZeroMZ/p/11370035.html