![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
database
文章平均质量分 92
kkkjjjkj
程序人生
展开
-
提高数据库查询效率
11.在使用索引字段作为条件时,如果该索引是复合索引,那么必须使用到该索引中的第一个字段作为条件时才能保证系统使用该索引,否则该索引将不 会被使用,并且应尽可能的让字段顺序与索引顺序相一致。12.不要写一些没有意义的查询,如需要生成一个空表结构: select col1,col2 into #t from t where 1=0 这类代码不会返回任何结果集,但是会消耗系统资源的,应改成转载 2011-11-24 15:57:30 · 347 阅读 · 0 评论 -
提高数据库查询的效率2
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id fr转载 2011-11-24 15:56:31 · 280 阅读 · 0 评论 -
oracle 获取 当年第一天 当月第一天
select trunc(sysdate,'YYYY'),add_months(trunc(sysdate,'YYYY'),12)-1, from dual t原创 2014-06-13 17:23:25 · 36617 阅读 · 2 评论 -
powerdesigner 配置oracle数据源 反向工程导出pdm文件
系统:win7 64位 ; Oracle 10g;Powerdesigner 15问题,在控制面板=>管理工具=>数据源 (ODBC) 添加“用户DNS”配置驱动程序为oracle的都能连接成功,如下图另外:可以看“数据源 (ODBC)”的属性,看他的目标在哪里,当前的在:%windir%\SysWOW64\odbcad32.exe但是进入Powerdes原创 2016-11-19 17:49:43 · 3420 阅读 · 0 评论 -
oracle 表数据被删 操作时误删除 误删数据 恢复方法
闪回执行步骤: 1.查询最近更新数据之前的数据(以便确定是不是Commit之前的数据) select * from your_table as of timestamp to_timestamp('2014-04-22 08:00:00', 'yyyy-mm-dd hh24:mi:ss'); 其中account为被误操作的表,'2014-04-22 08:00:00'原创 2016-11-26 12:00:05 · 428 阅读 · 0 评论 -
mysql语法用于数据库删除重复记录
删除重复记录,保存Id最大的一条DELETE FROM SHIP_INOUT_PORT_tmp WHERE mmsi IN ( SELECT mmsi FROM SHIP_INOUT_PORT_tmp GROUP BY mmsi ...原创 2018-03-19 11:49:20 · 196 阅读 · 0 评论 -
删除逐渐唯一索引,级联删除主键约束
--删除主键级联删除唯一索引alter table CBS_AG_CNTR_MTHD drop CONSTRAINT PK_CBS_AG_CNTR_MTHD cascade drop index;--创建主键级联创建唯一索引alter table CBS_AG_CNTR_MTHDadd constraint PK_CBS_AG_CNTR_MTHD primary key (CNTR_PACKG_U...原创 2018-03-20 17:17:45 · 406 阅读 · 0 评论 -
oracle 日期计算函数 小时 分钟数
oracle两个时间相减默认的是天数oracle 两个时间相减默认的是天数*24 为相差的小时数oracle 两个时间相减默认的是天数*24*60 为相差的分钟数oracle 两个时间相减默认的是天数*24*60*60 为相差的秒数--MONTHS_BETWEEN(date2,date1)给出date2-date1的月份SQL> select months_between('19-1...原创 2018-03-30 13:56:16 · 12156 阅读 · 0 评论 -
mysql 数据库连接 报 Packet for query is too large ( > 1024 )解决办法
Packet for query is too large (1706 > 1024). You can change this value on the server by setting the出现这个错误,百分之90是mysql 中max_allowed_packet 设置小了可以登录数据库通过 show variables like '%max_allowed_packet%'查看...原创 2018-06-05 10:29:35 · 1080 阅读 · 0 评论