SQL知识点记录
来源:互联网 发布:中文域名成功案例 编辑:程序博客网 时间:2024/05/29 18:51
引号的使用
(1)数字不能用引号;(2)字符串要用引号;(3)日期和时间要用引号;(4)函数不能用引号;(5)NULL不能用引号。
索引
索引中的数据是经过排序的。
创建索引。CREATE INDEX nameind ON student(name); /*在表student中的列name建一个索引nameind*/
使用索引。主要在where,order by,min,max子句中。比如select * from student where name = 'phf'; /*可以利用列name索引*/
可以在查询语句前加explain来获取该查询语句是如何处理的信息。详见http://blog.csdn.net/gzh0222/article/details/6707760
联接
1.内连接:所有左边表的数据项都与右边表的数据项作一次连接,共产生M*N个连接项,但只保留了满足条件的连接项,其他删除(左表中没有匹配的项也会被删除)。
1.1连接条件写法:(1)where 先形成M*N连接项,再过虑不匹配项; (2)on 在连接时过虑不匹配项,即只对匹配项形成连接; (3)using 要求连接两表中作为条件的字段要相同,结果集中去除重复的条件字段。
内连接的语法:SELECT fieldlist FROM t_left [inner] join t_right ON t_left.col=tt_right.col; //mysql中的连接默认是内连接。
内连接的语法:SELECT fieldlist FROM t_left inner join t_right using(col);
2.交叉连接(笛卡尔积连接):没有条件的内连接,即保留所有产生的M*N个连接项。交叉连接的语法:SELECT fieldlist FROM t_left cross join t_right;
另:无条件的多表查询也是产生笛卡尔积的结果。如SELECT fieldlist FROM t_left , t_right;
3外连接 :
连接条件:(1)on 用法同内连接; (2)using用法同内连接; 另注意外连接不能用where, 而且一定要有连接条件
3.1左外连接:所有左边表的数据项都与右边表的数据项作一次连接,共产生M*N个连接项,保留匹配的连接项,同时也保留左表中没有匹配到的数据项,其他删除。
左外连接语法:SELECT fieldlist FROM t_left left [outer] join t_right ON t_left.col=t_right.col; //一定要有连接条件
3.2右外连接:与左外连接类似,即保留匹配的连接项,同时也保留右表中没有匹配到的数据项
右外连接语法:SELECT fieldlist FROM t_left left [outer] join t_right ON t_left.col=t_right.col;
相当于SELECT fieldlist FROM t_right left [outer] joint_left ON t_left.col=t_right.col;
3.3全外连接:保留匹配的连接项,同时也保留左和右表中没有匹配到的数据项。
全外连接语法:SELECT fieldlist FROMt_right full [outer] joint_left ON t_left.col=t_right.col;
4.自然连接
通过mysql自已的判断完成连接过程,不需要指定连接条件。mysql会利用多表内的相同字符作为连接条件。
也分自然内连接,自然左外连接,自然右外连接,自然全连接
自然内连接语法:SELECT fieldlist FROM t_left natural join t_right;
自然左外连接语法:SELECT fieldlist FROM t_left natural left join t_right;
分组
合并
- SQL知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 知识点记录
- 记录学习的点滴(SQL零碎知识点)
- SQL知识点
- sql知识点
- SQL 知识点
- SQL知识点
- Android游戏框架AndEngine使用入门
- 智慧书-永恒的处世经典格言:121-160
- VS2010 WCF用户名密码X.509验证
- 《德鲁克管理思想精要》读书笔记8 - 时间
- 虚拟化数据中心一般架构
- SQL知识点记录
- Poj 2063 Investment (完全背包)
- Html5或者类似方案将会大行其道
- Java Socket实战之一 单线程通信
- 最优二叉树(或者最优树)的建立过程
- Java Socket实战之七 使用Socket通信传输文件
- 智慧书-永恒的处世经典格言:161-200
- dojo相关网上资源
- 递归实现整数划分