SQL> conn cowork_czsh/cowork_czsh Connected. SQL> set linesize 200 SQL> set pagesize 200 SQL> set autot trace SQL> select workitemhi0_.PERFORMER as col_0_0_ from WORKITEM_HISTORY workitemhi0_ where (to_char(workitemhi0_.CASEID) in (select p
空值跟null的区别.mysql官方: “NULL columns require additional space in the row to record whether their values are NULL. For MyISAM tables, each NULL column takes one bit extra, rounded up to the nearest byte.” Mysql难以优化引用可空列查询,它会使索引.索引统计和值更加复杂.可空列需要更多的存储空间(见上
今天写了一个sql,其中涉及的表中的数据量都差不多为50w左右,查询发现用了8s.这个只是测试服上数据,放到正式服上,肯定一运行就挂了. SELECT Orders. NO, GuidNo, Orders.CreateTime, sum(OrderItem.Quantity) AS Quantity, Brand. NAME AS BrandName, member.Mobile, Street AS deliveryaddress, Area FROM Orders INNER JOIN Or
今天在写MySQ的SQL语句的时候遇到了一个奇怪的问题 select count(*) from subsitealbum t1, photo t2,files t3 where t1.SourceAlbumId = t2.FolderId and t2.ID = t3.ID and t2.FolderId = t3.FolderID and SiteId in (select SubsiteID from channelsubsites where ChannelID='yszw') GROU
//数据库保存的为时间戳select * from 表名 where FROM_UNIXTIME(存时间字段名,'%Y-%m-%d')='2017-12-12' //数据库保存的为日期格式时间SELECT * FROM 表名 where DATE_FORMAT(存时间字段名,'%Y-%m-%d')='2017-12-11'; //sql语句查出时间戳转化为日期格式 select *,from_unixtime(reg_time,'%Y-%m-%d %H:%i:%s') as datetime f
select sum(studychj) as tofflinejz from afterline where studybegin >= '2010-01-01 00:00:00' and studyend <= '2010-12-01 00:00:00'; 这么写不报错,但得出结果不准确. 方法一: 你也可以: select * from t1 where unix_timestamp(time1) > unix_timestamp('2011-03-03 17:39:05') an
今天看到一个博客园的一篇关于MySQL的IN子查询优化的案例,一开始感觉有点半信半疑(如果是换做在SQL Server中,这种情况是绝对不可能的,后面会做一个简单的测试.)随后动手按照他说的做了一个表来测试验证,发现MySQL的IN子查询做的不好,确实会导致无法使用索引的情况(IN子查询无法使用所以,场景是MySQL,截止的版本是5.7.18) MySQL的测试环境 测试表如下 create table test_table2 ( id int auto_increment primary ke
研发在早期的设计中,由于设计方面的问题,导致在设计表结构的时候,有个表有非空唯一索引而没有主键 在InnoDB存储引擎中,如果没有主键的情况下,有非空唯一索引的话,非空唯一索引即为主键. 那么这就会有个问题存在 应用在更新表的时候,用了 update aaaa ) ) 用了ID作为条件,修改,高事务并发下,可能会同时发生这种事务,由于id并没有任何索引,故此,表会被全锁,也就是全表.那么如何避免这个问题.我们线上的数据 暂时还不是很大,故此 drop index idx_aaa_unique o