SQL常用高级查询包括:Join查询、子查询。子查询:USE flowershopdb--子查询:在一个select语句使用另一个select 语句作为条件或数据来源.--查询块:一个select子句.--嵌套查询:在一个查询块中嵌套另一个查询块.内层查询叫子查询,外层查询叫主查询.--1 不相关子...
分类:
数据库 时间:
2015-02-08 18:02:25
阅读次数:
236
没有join条件导致笛卡尔乘积 学过线性代数的人都知道,笛卡尔乘积通俗的说,就是两个集合中的每个成员,都与对方集合中的随意一个成员有关联。能够想象,在SQL查询中,假设对两张表join查询而没有join条件时,就会产生笛卡尔乘积。这就是我们的笛卡尔乘积导致的性能问题中最常见的案例:开发者在写代码时遗...
分类:
数据库 时间:
2014-11-10 17:20:43
阅读次数:
303
1 $model = M();// 表名必须是完整的表名,如果有前缀,要加前缀2 $count = $model->table('wx_wxusers_purview p')->join('wx_wxusers u on p.openId=u.openid')->where($joinWhere)-...
分类:
Web程序 时间:
2014-11-06 19:05:31
阅读次数:
233
原来使用MySql处理的数据量比较少,小打小闹的,没有关注过性能的问题。最近要处理的数据量飙升,每天至少20W行的新增数据,导致MySql在性能方面已经是差到不可用的地步了,必须要重视MySql的优化了。经验借鉴在不涉及到join查询的情况下,单个表的体积大于2g的时候,需要进行分表存储(这时表的行...
分类:
数据库 时间:
2014-09-25 13:00:28
阅读次数:
231
有时候需要在两个数据库的表join 查询 这时候要用到 database link 。database link 的作用就是搭建数据库和数据库的连接。1.先看如何使用 PL\SQL 工具创建。找到database links 右键 新建填名称, 这里的用户名是远程数据库的登录名数据库就是本地文件 D...
分类:
数据库 时间:
2014-08-20 16:03:22
阅读次数:
263
最近遇到使用hsql查询两张表的时候,发现一旦leftjoin就差些很慢,单独查很快,不知道为什么。然后听说hsql只要数据量稍微大点,再join一下就很慢,绞尽脑汁想到了一天终于想到办法了。于是拆分sql把依然使用leftjoin,但是事先把两个表的结果集变小就可以leftjoin了。例子如下..
分类:
数据库 时间:
2014-08-07 07:30:30
阅读次数:
233
left join查询左边一张表右边一张表。以左表为主:select * from A left join B on (主外键关系)先把A表中的数据查询出来 后面查询B表中的数据补齐在这里 * 号可以用任何列代替. 当然两表重复的列需要指定表再指定列它会优先查询A表中的数据。比如说 A表中有两条数....
分类:
数据库 时间:
2014-07-31 20:12:57
阅读次数:
260
网站优化:1、数据库优化1)数据库设计方面(1)设计良好的数据库结构,允许部分数据冗余(2)选择合适的表字段数据类型和存储引擎,适当的添加索引2)数据库代码方面(1)书写高效率的SQL(2)尽量避免join查询3)数据库主从读写分离2、页面静态化1)全站静态化,cms系统,如dedecms2)部门页...
分类:
Web程序 时间:
2014-05-22 02:00:25
阅读次数:
278