手记

MySQL数据表查询SQL语句学习笔记

查询记录

最基本的查询语句是由SELECT和FROM关键字组成的

SELECT * FROM t_emp;

SELECT empno,ename,sal FROM t_emp;

SELECT语句屏蔽了物理层的操作,用户不必关心数据的真实存储,交由数据库高效的查找数据。

使用列别名

通常情况下,SELECT子句中使用了表达式,那么这列的名字就是认为表达式,因此需要一种对列名重命名的机制。

SELECT

    empno,

    sal*12 AS “income”              as可省略

FROM t_emp;

子语句执行顺序:1、词法分析与优化;2、选择数据源;3、选择输出内容

数据分页

只加载少量部分信息。

SELECT ....FROM ...LIMIT 起始位置,偏移量

如果limit子句只能有一个参数时,表示偏移量,起始默认值0

结果集排序

SELECT .....  FROM  ....... ORDER BY 列名 [ASC|DESC]

如果两条数据排序内容相同时,根据主键排序。多个排序根据首要和次要条件

SELECT * FROM t_emp ORDER BY sal DESC LIMIT 0,20

结果集中的重复记录

结果集存在重复记录。去除重复记录用DISTINCT关键字来实现。

SELECT DISTINCT job FROM t_emp;

如果SELECT子句中如果查询多列 ,去重复记录失效。且在一个子句中只能使用一次。

条件查询

SELECT...FROM .... WHERE 条件  [AND|OR] 条件 ......;

四类运算符

算术运算符  与 null运算的结果都为 null

SELECT IFNULL(null,0)

DTAEDIFF(date1,date2)两个日期的差值

比较运算符 <     >  ........  in  IS NULL  IS NOT NULL BETWEEN AND  LIKE  REGEXP

%匹配任意字符 _匹配一个字符

REGEXP "^[\\u4e00-\\u9fa5]{2,4}$";

逻辑运算符 AND OR NOT XOR

二进制按位运算  & | ~ ^ <<  >>

Where 子句注意事项

执行顺序从左到右,所以应该吧索引条件,或者赛选掉记录多的条件写在最左侧

子句执行顺序  FROM ->WHERE->SELECT->ORDER BY-> LIMIT




 

0人推荐
随时随地看视频
慕课网APP