数据库基础
文章平均质量分 68
高级全栈工程师
这个作者很懒,什么都没留下…
展开
-
保护索引要注意的问题
1. IS NULL 与 IS NOT NULL不能用null作索引,任何包含null值的列都将不会被包含在索引中。即使索引有多列这样的情况下,只要这些列中有一列含有null,该列就会从索引中排除。也就是说如果某列存在空值,即使对该列建索引也不会提高性能。 任何在where子句中使用is null或is not null的语句优化器是不允许使用索引的。2. 避免使用不兼容的数据类型。原创 2014-05-03 17:35:19 · 1869 阅读 · 0 评论 -
刚整理的SQL常见替代点
1、能用DISTINCT的就不用GROUP BY SELECT OrderID FROM Details WHERE UnitPrice > 10 GROUP BY OrderID 可改为: SELECT DISTINCT OrderID FROM Details WHERE UnitPrice > 10 2.能用UNION ALL就不要用UNION UNION A原创 2014-05-03 18:47:52 · 1876 阅读 · 0 评论 -
MySQL慢查询
看到这个名称我惊呆了...SQL不是希望快速查询取得结果吗,怎么什么时候会有这个概念。问了一个哥们,哥们认为是漫查询:同时多查询。于是Google得出了如下结果:慢查询其实对应的是MySQL慢查询日志系统,用来记录执行比较慢的SQL。怎么去判断执行慢呢,MySQL中你show variables like '%quer%';时,你可以看到long_query_time 属性,对应的就是设置的比较时间。当看到long_query_time 属性时,你同时可以看到log_slow_queries状态原创 2014-05-02 21:44:20 · 1309 阅读 · 0 评论 -
一道SQL题考你数据库的使用能力
一道SQL题考你数据库的使用能力!原创 2014-04-26 00:21:43 · 2289 阅读 · 8 评论 -
Oracle启动和关闭服务
Oracle需要启动和关闭的服务:1、OracleOracle_homeTNSListener 对应于数据库的监听程序2、OracleServiceSID 对应于数据库的例程3、OracleDBConsoleSID 对应于Oracle Enterprise Manager(OEM)注:其中OracleOracle_home表示Oracle主目录 其中SID表示Ora原创 2014-05-19 14:44:58 · 1496 阅读 · 0 评论 -
MySQL中ON DUPLICATE KEY UPDATE使用
今天做判断插入用到了MySQL中ON DUPLICATE KEY UPDATE,现在Mark以下!如果你想做到数据库中没有数据的话插入数据、有数据的话更新数据,那么你可以选择ON DUPLICATE KEY UPDATE。ON DUPLICATE KEY UPDATE能够在UNIQUE索引或PRIMARY KEY存在的情况下对旧行执行UPDATE操作。例如:如果列a被定义为UNIQUE,并且包含值1,则以下两个语句具有相同的效果:原创 2014-05-21 09:16:23 · 2336 阅读 · 0 评论 -
浅析MySQL各种索引
MySQL各种索引(因为是浅析大多都不刻意区分搜索引擎)INDEX(普通索引):最基本的索引,没有任何限制 ALTER TABLE `table_name` ADD INDEX index_name ( `column` )UNIQUE(唯一索引):与"普通索引"类似,不同的就是:索引列的值必须唯一,但允许有空值。 ALTER TABLE `table_name` ADD UNIQUE (`column`) 注:创建唯一索引的目的不是为了提高访问速度,而只原创 2014-05-22 10:10:17 · 1290 阅读 · 0 评论 -
Oracle分组取第一条数据
看看以前的私密日志,原来自己之前被很多小而简单的问题困惑过!看着那时候我们还是新手中的新手做的备忘笔记!其实就是用了Oracle的统计函数而已!以前的日记(看样子应该是以前公司的源码,呵呵……)如下:勿喷!对多数据进行分组排序后取每组第一条记录:原创 2014-08-08 15:20:21 · 2295 阅读 · 0 评论