sql
文章平均质量分 86
零点起航
java新手
展开
-
mybatis分页 sql 语句
/*自己新增的view*//*mybatis分页 sql 语句*/ select * from (select ROW_NUMBER() OVER(ORDER BY EPAY_ID DESC) AS ROWNUM, b.item_name ,b.MAIN_IMG_GROUP_ID ,d.CUST_ID原创 2013-04-28 15:54:46 · 1164 阅读 · 0 评论 -
mysql的乐观锁与悲观锁
悲观锁会阻塞其他线程。乐观锁不会阻塞其他线程,如果发生冲突,采用死循环的方式一直重试,直到更新成功。乐观锁总是认为不会产生并发问题,每次去取数据的时候总认为不会有其他线程对数据进行修改,因此不会上锁,但是在更新时会判断其他线程在这之前有没有对数据进行修改,一般会使用版本号机制或CAS操作实现。例如:有这样一个表:每次更新时update在条件后再附加一个时间为条件:...原创 2019-08-07 09:56:03 · 152 阅读 · 0 评论 -
浅析MySQL中exists与in的使用
一、exists的执行基本原理exists对外表用loop逐条查询,每次查询都会查看exists的条件语句,当 exists里的条件语句能够返回记录行时(无论记录行是的多少,只要能返回),条件就为真,返回当前loop到的这条记录,反之如果exists里的条 件语句不能返回记录行,则当前loop到的这条记录被丢弃,exists的条件就像一个bool条件,当能返回结果集则为true,不能返回结果集...原创 2019-08-06 14:23:23 · 167 阅读 · 0 评论 -
MYSQL-IFNULL、DATE_SUB介绍
IFNULL(expr1,expr2) 如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。IF(expr1,expr2,expr3) 如果expr1是TRUE(expr1NULL),那么IF()返回expr2,否则它返回expr3。IF()返回一个数字或字符串值,取决于它被使用的上下原创 2017-08-29 19:28:01 · 700 阅读 · 0 评论 -
mysql → INSERT ... ON DUPLICATE KEY UPDATE
本文来自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/23557915,转载请注明。 向数据库插入记录时,有时会有这种需求,当符合某种条件的数据存在时,去修改它,不存在时,则新增,也就是saveOrUpdate操作。这种控制可以放在业务层,也可以放在数据库层,大多数数据库都支持这种需求,如Oracle的m转载 2016-09-01 14:40:40 · 287 阅读 · 0 评论 -
mysql strcmp函数
STRCMP(str1, str2)比较两个字符串,如果这两个字符串相等返回0,如果第一个参数是根据当前的排序小于第二个参数顺序返回-1,否则返回1。mysql> SELECT STRCMP('MOHD', 'MOHD');+---------------------------------------------------------+| STRCMP('MOHD', 'M原创 2016-09-01 09:43:57 · 1240 阅读 · 0 评论 -
mysql中的if条件语句
.IF(expr1,expr2,expr3)如果 expr1 是TRUE (expr1 NULL),则 IF()的返回值为expr2; 否则返回值则为 expr3。IF()的返回值为数字值或字符串值,具体情况视其所在语境而定。例子:mysql> SELECT IF(1>2,2,3); -> 3mysql> SELECT IF(1 -> 'yes原创 2016-09-01 09:40:25 · 762 阅读 · 0 评论 -
INSERT INTO SELECT语句 和 SELECT INTO FROM语句
Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT原创 2016-08-31 17:12:53 · 1126 阅读 · 0 评论 -
mysql索引
索引(在MYSQL中也叫做键),是存储引擎用于快速找到记录的一种数据结构。写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点。考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4个页面,如果这10^4个页面在磁盘上转载 2015-09-01 16:51:58 · 375 阅读 · 0 评论 -
mysql索引及类型
索引是快速搜索的关键。MySQL索引的建立对于MySQL的高效运行是很重要的。下面介绍几种常见的MySQL索引类型。在数据库表中,对字段建立索引可以大大提高查询速度。假如我们创建了一个 mytable表:CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL ); 我们随机向里面插入了转载 2015-09-01 16:54:54 · 419 阅读 · 0 评论 -
MySQL锁
锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。本章我们着重讨论MySQL锁机制的特点,常见的锁问题,以及解决MySQL转载 2015-09-01 16:50:48 · 314 阅读 · 0 评论 -
mysql相关语句
select DATE_ADD(curdate(), INTERVAL 2 DAY);select DATE_ADD(curdate(), INTERVAL+2 DAY);原创 2014-11-07 11:19:40 · 460 阅读 · 0 评论 -
令人迷糊的Oracle递归查询(start with)
写代码时碰到要弄清楚Oracle的role之间的传递关系,就是有role A的话,可以通过grant A to B,把A赋予给B,又通过grant B to C .那我想知道所有role中,有哪些role具有A的权限.上网一查发现有个递归查询,不过都讲的不是太详细,而那Oracle整的那用法实在太怪异了,跟我们平时用的SQL差的太远,所以琢磨了好一阵子脑子才转过弯呢.树形结构可能一转载 2014-01-06 15:47:25 · 496 阅读 · 0 评论 -
DB2中SQLSTATE=57016 SQLCODE=-668,原因码 "7"的解决
对表进行任何操作都不被允许,提示SQLSTATE=57016 SQLCODE=-668 ,原因码 "7"的错误:SQL0668N Operation not allowed for reason code "7" on table XXX. 解决方法为:执行命令:reorg table XXX;即可。参考原文为:Operation not allowed for转载 2013-12-09 17:15:43 · 4950 阅读 · 0 评论 -
聚簇索引与非聚簇索引(Clustered index and non clustered inde)
索引的分类1、逻辑分类单列索引:基于某一列的索引多列索引:也叫组合索引,是基于多列的索引。唯一索引:保证每一列的值不相同。非唯一索引:索引列的值可以相同2、按照类型分1)FULLTEXT即为全文索引,目前只有MyISAM引擎支持。其可以在CREATE TABLE ,ALTER TABLE ,CREATE INDEX 使用,不过目前只有 CHAR、VARCHAR ,TEXT 列...原创 2019-08-18 01:06:29 · 195 阅读 · 0 评论