1.优先使用join联表查询,而不是子查询原因:过多的子查询会使效率下降。2.当join联表查询时,过滤条件优先使用on,之后无法使用on的,再使用where进行过滤原因:MySQL使用join联表时,首先处理on中的过滤条件,然后再处理where中的过滤条件,将过滤条件优先放在on后,可以时筛..
分类:
数据库 时间:
2015-11-09 00:16:04
阅读次数:
262
在使用数据库中间件之前,我就想到分库分表的操作对于联表操作可能会显得非常复杂。因为如果数据是分片存储的,如果主表的数据在1分片,从表对应的数据在2分片,那么这一次联表查询就需要跨节点,如果业务再复杂一点,显然会造成不必要的性能损耗。今天在研究mycat文档的时候看到mycat很巧妙的解决了这个问.....
分类:
其他好文 时间:
2015-09-23 18:58:03
阅读次数:
303
1、UnionUNION 操作符用于合并两个或多个 SELECT 语句的结果集。UNION运算符通过组合其他两个结果表(例如TABLE1和TABLE2)并消去表中任何重复行而派生出一个结果表。当ALL随UNION一起使用时(即UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自TA...
分类:
数据库 时间:
2015-09-18 10:25:41
阅读次数:
308
1 需求一个班级中有多个学生根据classId查询对应的班级信息,包括学生信息和老师信息2 创建表和数据CREATE TABLE student( s_id INT PRIMARY KEY AUTO_INCREMENT, s_name VARCHAR(20), class_id INT);INSER...
分类:
其他好文 时间:
2015-09-15 12:51:53
阅读次数:
197
1 需求一个老师对应一个班级一个班级只有一个老师根据班级id查询班级信息,这个班级信息中有老师的信息2 创建表和数据CREATE TABLE teacher( t_id INT PRIMARY KEY AUTO_INCREMENT, t_name VARCHAR(20));CREATE TABLE ...
分类:
其他好文 时间:
2015-09-15 12:26:55
阅读次数:
248
一、一对一关联 ?1.1、提出需求 根据班级id查询班级信息(带老师的信息) 1.2、创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关系...
分类:
其他好文 时间:
2015-08-12 13:31:32
阅读次数:
228
一、一对一关联
1.1、提出需求
根据班级id查询班级信息(带老师的信息)
1.2、创建表和数据
创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关系。
1 CREATE TABLE teacher(
2 t_id INT PRIMARY KEY AUTO_INCREMENT,
3 t_name...
分类:
其他好文 时间:
2015-07-31 10:44:50
阅读次数:
100
mysql中isnull,ifnull,nullif的用法如下:isnull(expr) 的用法:如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0。mysql> select isnull(1+1);-> 0mysql> select isnull(1/0);-> 1使...
分类:
数据库 时间:
2015-07-28 23:00:51
阅读次数:
319
1. 通用查询模块,可以通过关联数据库表,存储过程或程序代码开发查询,多个查询之间也可构成主从关联查询。 2. 业务异常处理 支持统一的异常处理。 3. 内置一个简单的SQL Server查询分析器,在关联表查询不满足需求的情况下直接运行SQL语句查询。 4. 文件共享管理,支持文件存储在数据库或文...
分类:
其他好文 时间:
2015-07-16 18:59:02
阅读次数:
105
如题:查询出每个雇员的姓名,工资,部门名称,工资在公司的等级及其领导的姓名,领导的工资,以及领导所对应的等级
这是oracle的默认Scott用户下面的emp,dept 和 salgrade 表间的一道思考题。
分析:先明确工资等级表(salgrade)中的内容;再查询查询出每个雇员的姓名,工资,部门名称,工资在公司的等级(salgrade);在此上基础上增加查找上司姓名;最后确定雇员的经理姓名,经理的工资,以及经理工资所对应的等级。从这个例子可以看出,对于复杂的多表查询,要一步一步地实现,不要急于求成。...
分类:
其他好文 时间:
2015-06-06 00:29:24
阅读次数:
234