SQL成长记录
xiaoluyouyue
这个作者很懒,什么都没留下…
展开
-
SQL_CALC_FOUND_ROWS 的使用问题(笔记)
mysql> select SQL_CALC_FOUND_ROWS * FROM tbl_name -> WHERE id > 100 LIMIT 10; mysql> select FOUND_ROWS(); 使用SQL_CALC_FOUND_ROWS能够在查询时为您事先准备好符合where条件的记录数目,然后只要在随后执行一句select FOUND_R...原创 2013-11-11 14:32:03 · 438 阅读 · 0 评论 -
MySQL主从复制与读写分离
项目中遇到的数据问题MySQL主从复制与读写分离 MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过。但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面。因此,一般来说都是...原创 2014-12-01 21:46:00 · 68 阅读 · 0 评论 -
统计sql整理
项目统计sql记录:获取不同诚信等级的企业数1:首先获取某个网格区域,某个企业类型所有的活动的企业数2:获取上一年的惩罚企业数(排除重复的企业一年中多次惩罚记录,获取最新一条即可)3:排除诚信评定中同一个企业在同一个评定级别中多条记录去最新的企业的评定等级4:排除诚信评定中企业在上一年被惩罚的企业SELECT ec.score_level,COUNT(ec.score_...原创 2016-10-28 11:21:15 · 110 阅读 · 0 评论 -
自定义函数 pgsql
1:经纬度计算距离DECLARE dx float8; dy float8; b float8; Lx float8; Ly float8;begin dx := lng1 - lng2; dy := lat1 - lat2; b := (lat1 + lat2) * 0.5; Lx := RADIANS(dx) * 63...原创 2016-06-27 17:38:47 · 414 阅读 · 0 评论 -
常见的sql优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,Sql 代码 : select id from t where num is null;可以在 num 上设置默认值 0,确保表中 num 列没有 null 值,然后这样...原创 2015-06-09 11:09:59 · 92 阅读 · 0 评论 -
使用Explain分析SQL
如果您发现某一条 SQL 语句的运行情况比较糟。那么您该怎么做呢?DB2 提供了很多不同的工具,用来确切地发现是什么妨碍了性能。每个工具都略有不同,但是它们都会研究解释 SQL 正在执行什么的 Explain。SQL 的 Explain 通过图形化或基于文本的方式详细说明了 SQL 语句的每个部分是如何执行以及何时执行的。这包括以下一些基本信息:正被访...原创 2015-06-08 15:06:58 · 154 阅读 · 0 评论 -
MYSQL:SQL_CALC_FOUND_ROWS和count(*)性能比较
使用覆盖索引情况下,使用SQL_CALC_FOUND_ROWS性能较高;无覆盖索引情况下,使用count(*)性能较高。另使用innoDB引擎比MyISAM低。原创 2015-04-10 17:31:01 · 208 阅读 · 0 评论 -
Mysql初始化root密码和允许远程访问(转)
Mysql初始化root密码和允许远程访问2009-09-21 13:42 by 敏捷的水, 57605 阅读, 0 评论, 收藏, 编辑mysql默认root用户没有密码,输入mysql –u root 进入mysql1、初始化root密码进入mysql数据库1mysql>update user set password=PAS...原创 2015-04-06 15:40:27 · 94 阅读 · 0 评论 -
(转)经典SQL查询语句大全
一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始 备...原创 2013-11-04 14:05:51 · 84 阅读 · 0 评论 -
mysql的DUPLICATE KEY
经常遇到这样的情景,向一个表里插入一条数据,如果已经存在就更新一下,用程序实现麻烦而且在并发的时候可能会有问题,这时用mysql的DUPLICATE KEY 很方便 用法如下:例子: INSERT INTO `user_count`(`id`,`count`, `addtime`)values (#id#,#count#,#addtime#)ON DUPLICATE KEY UPDATE...2013-10-20 18:49:43 · 227 阅读 · 0 评论 -
数据库中in与exists的区别.txt
对于in与exists的区别: in适合于外表大而内表小的情况;exists适合于外表小而内表大的情况。 如果子查询得出的结果集记录较少,主查询的表较大且又有索引时应用in,反之如果外层的主查询记录较少,子查询中的表大,又有索引时使用exists。 其实我们区分in和exists主要是造成了驱动顺序的改变(这是性能变化的关键)。如果是exists,那么以外层的表...原创 2013-10-20 18:38:33 · 105 阅读 · 0 评论 -
sql数据库 命令行操作
命令行 1、显示当前数据库服务器中的数据库列表:mysql> SHOW DATABASES;2、建立数据库:mysql> CREATE DATABASE 库名;3、建立数据表:mysql> USE 库名;mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));4、删除数据库:mysql> DROP...原创 2014-03-12 18:34:11 · 134 阅读 · 0 评论 -
Mysql CONCAT IF 的运用
简单的查询使用CONCAT IF$query="SELECT CONCAT(id_state,'_',id_city) AS id_state_city,IF(state=city,state,CONCAT(state,'_',city)) AS state_city FROM #__jobs_job WHERE employer_id=".intval($masteruser-&g...原创 2013-12-12 09:39:22 · 1217 阅读 · 0 评论 -
sql对于json数据里面的key值我们如何排序
首先我们创建一个表json用于存储json数据,我们对其中的class或name进行排序,我们该如何处理?create table Json ( A varchar(100) not null);insert into Json (A) values ("{'class':'beatiful','name':'wonderful'}");insert into Json (...2013-11-17 22:14:27 · 493 阅读 · 0 评论 -
mysql的sql_mode合理设置(转)
MySQL的sql_mode合理设置sql_mode是个很容易被忽视的变量,默认值是空值,在这种设置下是可以允许一些非法操作的,比如允许一些非法数据的插入。在生产环境必须将这个值设置为严格模式,所以开发、测试环境的数据库也必须要设置,这样在开发测试阶段就可以发现问题 sql_mode常用值如下: ONLY_FULL_GROUP_BY:对于GROUP BY聚合操作,如果在SELECT中...原创 2017-01-22 09:15:18 · 129 阅读 · 0 评论