数据库相关

容易忽视的细节:查询两个日期之间的天数

Oracle查询两个日期之间的天数,参考SQL如下:SELECTROUND(TO_DATE('2013/11/15','YYYY/MM/DD')-SYSDATE)FROMDUAL这样写存在什么问题呢?假如当前的时间(SYSDATE)是:2013/11/1411:30,查询的结果是1。如果当前的时间过了12点,如:2013/11/1412:10,那么查询的结果会是0。习惯上,即使到了晚上2013/11/1423:59,离2013/11/15应该也是1天。所以

系统 2019-08-12 01:32:04 2778

数据库相关

group_concat函数详解

问了好多人,都不知道group_concat这个函数。这个函数好啊,能将相同的行组合起来,省老事了。MySQL中group_concat函数完整的语法如下:group_concat([DISTINCT]要连接的字段[OrderBYASC/DESC排序字段][Separator'分隔符'])基本查询select*fromaa;+------+------+|id|name|+------+------+|1|10||1|20||1|20||2|20||3|2

系统 2019-08-12 01:54:51 2775

DB2

DB2时间函数大全

原文出处:http://database.51cto.com/art/201011/232578.htm1--获取当前日期:23selectcurrentdatefromsysibm.sysdummy1;4valuescurrentdate;56--获取当前日期7selectcurrenttimefromsysibm.sysdummy1;8valuescurrenttime;9--获取当前时间戳10selectcurrenttimestampfromsys

系统 2019-08-12 01:52:36 2761

SqlServer

SqlServer索引的原理与应用

原文:SqlServer索引的原理与应用索引的概念索引的用途:我们对数据查询及处理速度已成为衡量应用系统成败的标准,而采用索引来加快数据处理速度通常是最普遍采用的优化方法。索引是什么:数据库中的索引类似于一本书的目录,在一本书中使用目录可以快速找到你想要的信息,而不需要读完全书。在数据库中,数据库程序使用索引可以重啊到表中的数据,而不必扫描整个表。书中的目录是一个字词以及各字词所在的页码列表,数据库中的索引是表中的值以及各值存储位置的列表。索引的利弊:查询

系统 2019-08-12 01:32:58 2742

MySql

mysql加减时间-函数-时间加减

mysql加减时间-函数-时间加减1.MySQL为日期增加一个时间间隔:date_add()set@dt=now();selectdate_add(@dt,interval1day);-加1天selectdate_add(@dt,interval1hour);-加1小时selectdate_add(@dt,interval1minute);-加1分钟selectdate_add(@dt,interval1second);-加1秒selectdate_add

系统 2019-08-12 01:51:37 2737

MySql

MySQL的锁(1)

锁机制是数据库系统区别于文件系统的一个关键特性,他可以确保用户能以一致的方式读取和修改数据。为了保证一致性,必须有锁的介入。MySQL操作缓冲池中的LRU列表,删除、添加、移动LRU列表中的元素等地方也都适用锁,从而允许对多种不同资源的并发访问。打个比方,我们到淘宝上买一件商品,商品只有一件库存,这个时候如果还有另一个人买,那么如何解决是你买到还是另一个人买到的问题?这里肯定要用到事物,我们先从库存表中取出物品数量,然后插入订单,付款后插入付款表信息,然后

系统 2019-08-12 01:33:33 2735

SqlServer

SQLServer表内自关联级联删除

今天处理SQLServer级联删除遇到了很蛋疼的事。SQLServer不支持表内自关联级联删除,而MySql和Oracle却支持。貌似原因是SQLServer会产生循环级联,就不给这样弄。所以很明确说:SQLServer是不支持表内自关联级联删除。那怎么办呢:只能用触发器呗IFEXISTS(SELECTNAMEFROMSYSOBJECTSWHERENAME='tg_SysDelete'ANDTYPE='TR')DROPTRIGGERtg_SysDelete

系统 2019-08-12 01:55:16 2729

Oracle

oracle获取字符串长度函数length()和hengthb()

lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节length(string)计算string所占的字符长度:返回字符串的长度,单位是字符对于单字节字符,LENGTHB和LENGTH是一样的.如可以用length(‘string’)=lengthb(‘string’)判断字符串是否含有中文。注:一个汉字在Oracle数据库里占多少字节跟数据库的字符集有关,UTF8时,长度为三。selectlength('cctv')

系统 2019-08-12 01:33:58 2722

Oracle

Oracle 内存数据库 TimesTen

Oracle内存数据库TimesTen是一个针对内存进行了优化的关系数据库,它为应用程序提供了当今实时企业和行业(如电信、资本市场和国防)所需的即时响应性和非常高的吞吐量。(产品数据表)Oracle内存数据库TimesTen通过改变数据在运行时驻留位置的假设来提供实时性能。通过在内存中管理数据,并相应地优化数据结构和访问算法,数据库操作能够以最大效率执行,从而大大提高响应速度和吞吐量,甚至能够与完全使用高速缓存磁盘的RDBMS相媲美。Oracle内存数据库

系统 2019-08-29 23:13:40 2721

数据库相关

psql: FATAL: role “postgres” does not exis

当时想做的事情,是运行一个创建数据库的脚本。找到的解决方案差不多和下面这个链接相同。http://stackoverflow.com/questions/15301826/psql-fatal-role-postgres-does-not-exist实际上做的事情就是loginin用别的帐号然后,在postgres的虚拟机里(而不是terminal)CREATEUSERpostgresSUPERUSER;实际上这个对我来说就够了。解决了roledoesno

系统 2019-08-12 01:54:58 2719

PostgreSql

PostgreSQL的备份与还原

导出:cmd,然后一直cd,到PostgreSQL的bin下面,用其pg_dump程序:pg_dump-hlocalhost-Uivms864013ivms864013>G:\mydb.bak或pg_dump-h10.64.62.181-Uivms864013ivms864013>G:\mydb2.bak或pg_dump-h127.0.0.1-Uivms864013-p5432ivms864013>G:\mydb3.bak第一个ivms864013是用户名

系统 2019-08-12 01:52:06 2713

SqlServer

SQLServer 2005 实现排序报表的利器 排序函数RA

SQLServer2005新增了排名函数,一共四个,其中RANK()DENSE_RANK()NTILE()这三个函数是制作带有排名列报表的利器,ROW_NUMBER()函数在分页存储过程中被广泛使用排名函数有一个明显的共性,就是与over()子句配合使用与排名函数一起使用的over()子句有两个参数partition分组方式orderby排序方式RANK()和DENSE_RANK()是一对兄弟,唯一的不同是当使用RANK()进行排名时由于orderby参数

系统 2019-08-29 22:45:44 2711

MySql

mysql按照中文名称排序

mysql按照中文名称排序Sql代码www.2cto.com/*NavicatMySQLDataTransferSourceServer:localSourceServerVersion:50022SourceHost:localhost:3306SourceDatabase:testTargetServerType:MYSQLTargetServerVersion:50022FileEncoding:65001Date:2012-11-1915:46:1

系统 2019-08-12 01:32:13 2710

Oracle

Oracle Oracle UTL_RAW类

GeneralInformationSource{ORACLE_HOME}/rdbms/admin/utlraw.sqlFirstAvailable7.3.4ConstantsNameDataTypeValuebig_endianPLS_INTEGER1little_endianPLS_INTEGER2machine_endianPLS_INTEGER3Dependencies179objectsSELECTnameFROMdba_dependencies

系统 2019-08-12 01:51:54 2707