SQL语句
文章平均质量分 62
golden_lion
这个作者很懒,什么都没留下…
展开
-
精妙Sql语句
来自: http://blog.csdn.net/hanghwp/archive/2007/05/06/1597672.aspx下列语句部分是Mssql语句,不可以在access中使用。SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—转载 2016-04-01 13:56:21 · 245 阅读 · 0 评论 -
MySQL5.7 Replication主从复制配置教程
最近配置mysql5.7主从复制的时候碰到了些问题,老老实实按老版本的步骤配置会有错误,后来自己查看了官方文档,才解决了问题,在这里总结一下5.7的配置步骤,大体步骤跟老版本的还是一样的,只是有一些小区别,下面进行具体介绍。 官方文档:http://dev.mysql.com/doc/refman/5.7/en/replication.html 系统环境:win转载 2016-07-20 09:12:31 · 913 阅读 · 0 评论 -
mysql几种性能测试的工具使用
mysql几种性能测试的工具使用近期由于要比较mysql及其分支mariadb, percona的性能,了解了几个这方面的工具,包括:mysqlslap sysbench tpcc-mysql,做一个整理,备忘,分享1、mysqlslap安装:简单,装了mysql就有了作用:模拟并发测试数据库性能。优点:简单,容易使用。不足:不能指定生成的数据规模,测试转载 2016-07-20 09:13:06 · 5563 阅读 · 0 评论 -
mysql max_allowed_packet查询和修改
http://www.2cto.com/database/201303/195830.htmlmysql根据配置文件会限制server接受的数据包大小。有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败。查看目前配置 show VARIABLES like '%max_allowed_packet%';显示的结果为:转载 2016-07-20 09:13:50 · 944 阅读 · 0 评论 -
MYSQL的锁介绍,以及死锁发生情况-带例子
mysql锁能在并发情况下的mysql进行更好的优化MySQL有三种锁的级别:页级、表级、行级,这3种锁的特性可大致归纳如下: 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,转载 2016-07-20 09:14:22 · 4258 阅读 · 0 评论 -
mysql支持跨表delete删除多表记录
前几天写了Mysql跨表更新的一篇总结,今天我们看下跨表删除。 在Mysql4.0之后,mysql开始支持跨表delete。 Mysql可以在一个sql语句中同时删除多表记录,也可以根据多个表之间的关系来删除某一个表中的记录。 假定我们有两张表:Product表和ProductPrice表。前者存在Product的基本信息,后者存在Product的价格。第一种跨表删除的方式是不用j转载 2016-07-20 09:14:55 · 4174 阅读 · 0 评论 -
二、oracle pctfree和pctused详解
一、建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert了,只能被用于update;即:当使用一个block时,在达到pctfree之前,该block是一直可以被插入的,这个时候处在上升期。 PCTUSED:是指当块里的转载 2016-07-20 09:15:29 · 295 阅读 · 0 评论 -
MySQL开发规范
1.库名、表名、字段名必须使用小写字母,并采用下划线分割。a)MySQL有配置参数lower_case_table_names,不可动态更改,linux系统默认为 0,即库表名以实际情况存储,大小写敏感。如果是1,以小写存储,大小写不敏感。如果是2,以实际情况存储,但以小写比较。b)如果大小写混合使用,可能存在abc,Abc,ABC等多个表共存,容易导致混乱。c)字段名显式转载 2016-07-20 09:16:07 · 508 阅读 · 0 评论 -
Oracle 中count(1) 和count(*) 的区别
count(1)与count(*)比较: 如果你的数据表没有主键,那么count(1)比count(*)快 如果有主键的话,那主键(联合主键)作为count的条件也比count(*)要快 如果你的表只有一个字段的话那count(*)就是最快的啦 count(*) count(1) 两者比较。主要还是要count(1)所相对应的数转载 2016-07-20 09:17:06 · 1837 阅读 · 0 评论 -
MYSQL中replace into的用法
今天在编程的时候,学习了replace into的用法,真的很好用,是insert into的增强版。在向表中插入数据时,我们经常会遇到这样的情况:1、首先判断数据是否存在;2、如果不存在,则插入;3、如果存在,则更新。在SQL Server中可以这样处理:if not exists (select 1 from t where id = 1)?insert into t(id转载 2016-07-20 09:17:38 · 1793 阅读 · 0 评论 -
MySQL索引之前缀索引和索引选择性
有时需要索引很长的字符列,它会使索引变大而且变慢。一个策略就是模拟哈希索引。但是有时这也不够好,那?通常可以索引开始的几个字符,而不是全部值,以节约空间并得到好的性能。这使索引需要的空间变小,但是也会降低选择性。索引选择性是不重复的索引值 和表中所有行的比值。高选择性的索引有好处,因为它使mysql在查找匹配的时候可以过波掉更多的行。唯一索引的选择率为1,为最佳值。如果索引BLOG转载 2016-07-20 09:18:08 · 2729 阅读 · 0 评论 -
mysql 如何用一条SQL将一张表里的数据插入到另一张表 3个例子
1. 表结构完全一样 insert into 表1 select * from 表2 2. 表结构不一样(这种情况下得指定列名) insert into 表1 (列名1,列名2,列名3) select 列1,列2,列3 from 表23、只从另外一个表取部分值insert into 表1 (列名1,列名2,列名3) values(列1,列转载 2016-07-20 09:19:00 · 36115 阅读 · 3 评论 -
50多条mysql数据库优化建议
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。缺省情况下建立的索引是非群集索引,但有时它并不是最佳的。在非群集索引下,数据在物理上随机存放在数据页上。合理的索引设计要建立在对各种查询的分析和预测上。一般来说:a.有大量重复值、且经常有范围查询( > , =, b.经常同时存取多列,且每列都含有重复值可考虑建立组转载 2016-07-20 09:43:16 · 1524 阅读 · 0 评论 -
MySQL随机获取数据的方法,支持大数据量
最近做项目,需要做一个从mysql数据库中随机取几条数据出来。总所周知,order by rand 会死人的。。因为本人对大数据量方面的只是了解的很少,无解,去找百度老师。。搜索结果千篇一律。特发到这里来,供大家学习。在mysql中带了随机取数据的函数,在mysql中我们会有rand()函数,很多朋友都会直接使用,如果几百条数据肯定没事,如果几万或百万时你会发现,直接使用是错误的。下面转载 2016-07-20 09:11:48 · 7205 阅读 · 0 评论 -
mysql order by 优化 |order by 索引的应用
在某些场景,在不做额外的排序情况下,MySQL 可以使用索引来满足 ORDER BY 子句的优化。虽然 ORDER BY并不完全精确地匹配索引,但是索引还是会被使用,只要在WHERE子句中,所有未被使用的那部分索引(一个索引多个字段的情况)以及所有ORDER BY字段都是一个常量就没问题。下面这些查询语句,使用了索引来对 ORDER BY部分进行优化:SELECT * FROM t转载 2016-07-20 09:11:03 · 533 阅读 · 0 评论 -
MySql 里的IFNULL、NULLIF和ISNULL用法区别
mysql中isnull,ifnull,nullif的用法如下:isnull(expr) 的用法:如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0。 mysql> select isnull(1+1);-> 0mysql> select isnull(1/0);-> 1使用= 的null 值对比通常是错误的。 isnull()转载 2016-07-20 09:10:28 · 8100 阅读 · 0 评论 -
sql如何查出某字段为空格或''但不是null的记录??还有 ‘ ’和'' 和 null 有什么区别吗??
2015-05-13 09:351where 字段 = '' and 字段 is not null查询出字段为空但不为null的,空其实字段里面是有空值的,而null是字段里并没有赋过任何值转载 2016-04-05 13:58:47 · 10773 阅读 · 0 评论 -
详解SQL Server连接(内连接、外连接、交叉连接)
在查询多个表时,我们经常会用“连接查询”。连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志。 什么是连接查询呢? 概念:根据两个表或多个表的列之间的关系,从这些表中查询数据。 目的:实现多个表查询操作。 知道了连接查询的概念之后,什么时候用连接查询呢? 一般是用作关联两张或转载 2016-04-07 10:02:56 · 359 阅读 · 0 评论 -
MySQL开发规范和原则大全
一、 表设计库名、表名、字段名必须使用小写字母,“_”分割。库名、表名、字段名必须不超过12个字符。库名、表名、字段名见名知意,建议使用名词而不是动词。建议使用InnoDB存储引擎。存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE。建议使用UNSIGNED存储非负数值。建议使用INT UNSIGNED存储IPV4。整形定义中不添加长度,比如使用INT,而不是INT(4)。使转载 2016-05-25 14:59:04 · 2988 阅读 · 1 评论 -
MySQL中SQL优化和架构设计的一些简单想法
MySQL中SQL优化和架构设计的一些简单想法普通MySQL运行,数据量和访问量不大的话,是足够快的,但是当数据量和访问量剧增的时候,那么就会明显发现MySQL很慢,甚至down掉,那么就要考虑优化我们的MySQL了。优化无非是从三个角度入手:第一个是从硬件,增加硬件,增加服务器第二个就是对我们的MySQL服务器进行优化,增加缓存大小,开多端口,读写分开第三个就是我们的应用转载 2016-05-13 08:45:40 · 360 阅读 · 0 评论 -
数据库中查询语句怎么设置别名
column="sid" property="id" jdbcType="INTEGER" /> id, agency_id, sales_id select from agency_sale wh原创 2016-01-07 11:46:53 · 4676 阅读 · 0 评论 -
mybatis sql in 查询
本文转自:http://www.blogjava.net/xmatthew/archive/2011/08/31/355879.html1. 当查询的参数只有一个时 findByIds(List ids) 1.1 如果参数的类型是List, 则在使用时,collection属性要必须指定为 listselect id="findByIdsMap" resultM转载 2016-05-26 15:53:27 · 693 阅读 · 0 评论 -
经典SQL语句大全
一、基础1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwin转载 2016-04-20 09:53:22 · 412 阅读 · 0 评论 -
SQL语句order by两个字段同时排序。
Posted by 陶之11@网站&WebcodeORDER BY 后可加2个字段,用英文逗号隔开。f1用升序, f2降序,sql该这样写ORDER BY f1, f2 DESC也可以这样写,更清楚:ORDER BY f1 ASC, f2 DESC如果都用降序,必须用两个descORDER BY f1 DESC, f2 DESC转载 2016-06-08 10:47:12 · 7938 阅读 · 0 评论 -
连续签到奖励 数据库如何设计?
用户连续签到7天 7天均有不同的奖励 如果有中间则会从第一天重新开始签到 7天一个周期完成后恢复到第一天开始重新签到考虑到用户数大概在200W,数据库如何设计更加合理?添加评论 分享按投票排序按时间排序3 个回答6赞同反对,不会显示你的姓名bravecat6 人赞同转载 2016-07-11 17:20:22 · 22797 阅读 · 0 评论 -
sql语句大全
整理了一下,希望对大家有用SQL语句大全 --语 句 功 能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据--数据定义CREATE TABLE --创建一个数据库表DROP TABLE --从数据库中删除表ALTER TA转载 2016-07-19 10:56:42 · 509 阅读 · 0 评论 -
数据库知识
http://www.cnblogs.com/langtianya/category/415632.html原创 2016-07-19 10:58:55 · 360 阅读 · 0 评论 -
经典SQL语句大全
一、基础1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\My转载 2016-06-23 18:20:25 · 319 阅读 · 0 评论 -
如何优化用SQL语句INSERT INTO … SELECT插入数据时锁全表的问题
1、binlog format 启用Row Based Replication(行复制)模式:SET GLOBAL binlog_format = 'ROW';如果你想永久的启用这个模式,请修改my.cnf 配置文件:[mysqld]binlog_format=ROW2、在执行你的sql语句前,设置当前会话的隔离级别SET SESSION TRAN转载 2016-07-20 09:09:59 · 8216 阅读 · 1 评论 -
Mysql数据库中把varchar类型转化为int类型的方法
在上篇文章给大家讲了MySQL数据库中把int转化varchar引发的慢查询,本文给大家介绍Mysql数据库中把varchar类型转化为int类型的方法,一起看看吧!mysql为我们提供了两个类型转换函数:CAST和CONVERT,现成的东西我们怎能放过?CAST() 和CONVERT() 函数可用来获取一个类型的值,并产生另一个类型的值。这个类型 可以是以下值其中的 一个转载 2017-03-16 09:44:44 · 13493 阅读 · 0 评论