一.问题 今天遇到了一个神奇的问题--表中有数据,但select count(*)的结果为0. 这个问题最初的表现形式是"查询报表没有分页". 最开始还以为是java端的问题.后来才发现,查分页的sql语句是返回0的. 随后将该sql语句放到PLSQL里运行,发现也是返回0条. 数据库版本是 Oracle 11.1.0.6. 试了好几个搜索引擎,但网上找不到类似情况. 二.山穷水尽疑无路 首先确认一下该表是否有数据-- select * from mytable 可看到该表(mytab…
分享自己一些常用的sql语句给大家 偶尔我们需要在已有表,并且有数据的情况下,修改其某个字段的类型或缩短他的长度,但是因为表中有数据,所以不可以直接修改,需要换个思路. //建立测试表,可跳过(善于应用各种系统功能组合,来实现日常工作需要,是每个合格程序员必备的) -- Create table create table TABLE1 (   col1 number(9),   col2 char(20) ); //尝试修改 ALTER TABLE TABLE1 MODIFY COL1 NUMB…
场景:项目中某张表的字段长度不够用了,现在要增加其长度 分两种情况: 1.表中没有数据的情况,直接一条sql语句就能解决 alter     table    表名    modify(字段名   字段类型 ) 例: alter table A modify(name varchar2(4000)) 2.表中有数据的情况下,也很简单,讲个小思路,先将原字段改个名字,然后新增一个列,这个新增的列名跟原字段列名一致,然后将原字段中的数据复制进新增字段中即可 创建一张C表,对应name字段长度是100…
一.本人环境描述      1.oracle服务端装在win7 32位上,oracle版本为10.2.0.1.0      2.Linux为centos6.5 32位,安装在Oracle VM VirtualBox虚拟机上      3.win7上装有ftp服务 二.功能实现描述      用shell的crontab命令定时执行某个.sh文件,此文件的功能已实现生成oracle表的数据到本地txt文件,并上传到ftp,必要时可记录执行日志. 三.步骤      1.在centos中安装orac…
从多表连接后的select count(*)看待SQL优化 一朋友问我,以下这SQL能直接改写成select count(*) from a吗? SELECT COUNT(*) FROM a LEFT JOIN b ON a.a1 = b.b1 LEFT JOIN c ON b.b1 = c.c1 废话不多说,直接上实验. 1. 准备数据 创建测试表a,b,c,并插入数据,a有重复数据,b是唯一数据,c是唯一数据,d有重复数据. 1) 创建a表 create table a (a1 int);…
HTML中的select下拉框内容显示不全的解决办法 今天,我遇到这样一个问题:查询栏中的下拉框中的内容过长,导致部分被覆盖了. 查询了一些资料,有的说用函数控制,有的说用事件控制,有的看不懂,有的实现起来太复杂了.后来,问了一下同事,有没有一些简单的方法,他告诉我在option中加title这个属性,于是按照他的方法试试,终于发现这个办法可行.这样,我就想记录下来,避免自己给忘记了. 1.具体实例如下 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.…
chart.js插件生成折线图时数据普遍较大时Y轴数据不从0开始的解决办法,原文:http://bubuko.com/infodetail-328671.html 默认情况下如下图 Y轴并不是从0开始,这样折现图的幅度会很大,不是正常的幅度,解决办法如下, 示例代码: window.onload = function () { var ctx = document.getElementById("canvas").getContext("2d"); window.m…
emmmm 写这个博客心情很复杂,,,本来这个触发器早就写好了,后来发生点事就写个博客当个备份吧,就当留纪念了:话不多数上问题以及SQL: 问题: 在ABONPB表上增加一个触发器,针对车牌号字段做update操作且new:传入的mduser字段为API,status为P时,向PA_BANK_REGNO_RECORD表中insert 一条记录,sync字段为0,修改次数为之前的次数加1,其余字段参考字段意义.(YC) 当insert进ABONPB时新案件时,同理lla_code为MA  为条件也…
SELECT NVL('',0) FROM DUAL 获取当前日期: SELECT SYSDATE FROM DUAL 当前日期-某个日期差的天数 SELECT  TO_NUMBER(SYSDATE  - TO_DATE('2015-02-01 00:00:00', 'yyyy-mm-dd hh24:mi:ss'))  FROM DUAL 当前日期+天数-某个日期 SELECT  TO_NUMBER((SYSDATE+NVL('5',0))  - TO_DATE('2015-02-01 00:0…
innodb引擎在统计方面和myisam是不同的,Myisam内置了一个计数器,所以在使用 select count(*) from table 的时候,直接可以从计数器中取出数据.而innodb必须全表扫描一次方能得到总的数量.要初步解决这个问题,需要做不同于myisam的一些工作: 1.使用第二索引(一般不使用主键索引),并且添加where条件,如: 复制代码 代码如下: select count(*) from product where comp_id>=0 ; show index f…