SQL语句
小韩博客
这个作者很懒,什么都没留下…
展开
-
连接Oracle时,navicat可以登录,但是用plsql登录会报 ora-01017:invalid username/password; logon denied
有一下几个点来查看原因:1.查看本地是否安装oracle客户端,并且是否完成一下配置;OCI库需要指定自己的oci文件地址(oci.dll)2.如果上面已经配置好仍然报同样的错误,需要查看安装的Oracle客户端路径下是否有tnsnames.ora文件,没有的话,需要做如下配置:Oracle安装目录下创建子文件夹network\admin,绝对路径也就是x:oraxcle安装路径\network\admin,在该目录下新建文件tnsnames.ora。然后添加环境变量TNS_ADMIN,值为原创 2020-08-04 15:14:47 · 3204 阅读 · 0 评论 -
Oracle多表联查时,某个字段由逗号分割的字符串组成,关系是此字符串切割后,对应另一张表某个字段,如何实现一条sql完成查询?
此需要类似于在sql中,使用in的场景,只是in是一对多,此处需要切割后的多对多。这里我使用了Oracle函数进行处理,取交集CREATE OR REPLACEFUNCTION "FUN_JUDGE_ISCONTAIN" (ids IN NVARCHAR2, out_ids IN NVARCHAR2)return numberASconnum NUMBER;BEGIN IF ...原创 2019-11-27 15:09:48 · 646 阅读 · 0 评论 -
MySQL 定时任务event 按天建表 并将前一天数据导入新建的表中并删除总表数据 实现分表功能
需求:实现日志系统保存日志信息到数据库,由于日志信息量巨大,需要每天一张表来管理数据.思路:总表不能改变,因为代码中SQL语句已经写死,表名不能改变;因此我们每天定时将总表数据导入到新表中,并将总表旧数据删除.1.通过event事件实现定时执行存储过程procedure2.通过创建存储过程procedure来建新表,导数据,删数据的操作实现:1.首先设置时区,并开启事件调度器...原创 2018-07-26 08:58:13 · 932 阅读 · 0 评论 -
Oracle获取一年中的所有日期和一个月中的所有日期
以当日SYSDATE为传入时间,也可以自行传入需要的日期获取当月所有日期SELECT TRUNC(SYSDATE, 'MM') + ROWNUM - 1 FROM DUAL CONNECT BY ROWNUM <= TO_NUMBER(TO_CHAR(LAST_DAY(SYSDATE), 'dd'))获取当年所有日期SELECT TRUNC(SYSDATE, 'YYY...原创 2019-03-07 15:30:37 · 7573 阅读 · 1 评论 -
Oracle获取指定时间段内的所有日期
以当日SYSDATE为开始时间,本月最后一天为结束时间来演示:SELECT trunc(SYSDATE)+rownum-1 day from dual connect by rownum <= trunc(LAST_DAY(SYSDATE)) - trunc(SYSDATE)+1connect by:指定层级的父行于子行的关系,并进行对应的循环。...原创 2019-03-27 17:18:50 · 1911 阅读 · 0 评论