clob型不能用 distinct,以及转换clob类型方法
举例clob型不能用 distinct
public List<WorkingPaper> findAssignedWorkPapers(String projectId,
String auditedObjectId, String userId) {
// String jpql = "SELECT distinct w FROM WorkingPaper w LEFT OUTER JOIN w.paperUsers AS u WHERE w.project.id = ? AND w.deleted = ? AND u.userType= ? ";
//clob型不能用 distinct
String jpql=" SELECT w FROM WorkingPaper w where w.id in (select distinct t.id FROM WorkingPaper t LEFT OUTER JOIN t.paperUsers AS u WHERE t.project.id = ? AND t.deleted = ? AND u.userType= ? ";
List<Object> params = new ArrayList<Object>();
params.add(projectId);
params.add(Boolean.FALSE);
params.add(UserType.PAPER_PRINCIPAL);
StringBuilder sb = new StringBuilder(jpql);
if (StringUtils.isNotBlank(auditedObjectId)) {
sb.append("AND t.auditedUnitId = ? ");
params.add(auditedObjectId);
}
if (StringUtils.isNotBlank(userId)) {
sb.append("AND u.userId = ? ");
params.add(userId);
}
sb.append(")");
sb.append(" order by w.code");
return this.find(sb.toString(), params.toArray());
}
解决存储字符不够,转换为clob格式SQL
举例:
--审计公示,解决审计公示内容存储字符不够
--select * from IAM_AUDIT_PUBLICITY
--第一步,将publicity_content重命名为publicity_content_bak
alter table IAM_AUDIT_PUBLICITY rename column publicity_content to publicity_content_bak;
--第二步,在表中新建clob属性列publicity_content
alter table IAM_AUDIT_PUBLICITY add publicity_content clob;
--第三部,将旧表中的数据拷贝到新表
update IAM_AUDIT_PUBLICITY set publicity_content=publicity_content_bak;
--第四部,删除备份列
alter table IAM_AUDIT_PUBLICITY drop column publicity_content_bak;
clob型不能用 distinct,以及转换clob类型方法的更多相关文章
- oracle中Blob、Clob、Varchar之间的互相转换
以下是oracle中Blob.Clob.Varchar之间的互相转换(都是百度找的,亲测可用) Blob转Varchar2: CREATE OR REPLACE FUNCTION blob_to_va ...
- java.lang.ClassCastException: oracle.sql.CLOB cannot be cast to oracle.sql.CLOB
错误现象: [framework] 2016-05-26 11:34:53,590 -INFO [http-bio-8080-exec-7] -1231863 -com.dhcc.base.db.D ...
- oracle转Mysql中,varchar2(10)和number应该转换为什么类型?
一. varchar2(10)和number应该转换为什么类型? oracle转成mysql时:varchar2(10)可以转成varchar(10)number则要看oracle中存储的具体是什么类 ...
- oracle转Mysql中,varchar2(10)和number应该转换为什么类型? (转)
一. varchar2(10)和number应该转换为什么类型? oracle转成mysql时:varchar2(10)可以转成varchar(10)number则要看oracle中存储的具体是什么类 ...
- 腾讯视频QLV格式转换mp4的方法
腾讯视频QLV格式转换mp4的方法不知道大家知不知道用?喜欢用腾讯视频的朋友应该都知道腾讯视频单独搞出了个QLV格式文件,只能用腾讯独有的腾讯视频软件才能播放,就算用格式工厂转换也不行,那么腾讯视频的 ...
- MVC验证12-使用DataAnnotationsExtensions对整型、邮件、最小值、文件类型、Url地址等验证
原文:MVC验证12-使用DataAnnotationsExtensions对整型.邮件.最小值.文件类型.Url地址等验证 本文体验来自http://dataannotationsextension ...
- Java中String转换Double类型 Java小数点后留两位
Java中String转换Double类型 double num1 = 0.0; String qq = "19.987"; num1 = Double.valueOf(qq.to ...
- Java 基础类型转换byte数组, byte数组转换基础类型
Java 基础类型转换byte数组, byte数组转换基础类型 Java类型转换 java类对象转化为byte数组
- SQL零星技术点:SQL中转换money类型数值转换为字符串问题
--SQL中转换money类型数值转换为字符串问题,直接转换就转为两位了,所以需要做一下处理.具体请看下述sql实例. 1 create table #test(price money) insert ...
随机推荐
- 如何创建vss2005的数据库
配置如下 VSS手工创建数据库的步骤(设数据库根目录为D:\VSS): 1.在根目录中创建名为srcsafe.ini(全局配置文件)的文件,文件内容如下: Data_Path = data Temp_ ...
- css3动画3
1.transition过渡动画 2.@keyframes关键帧动画,配合transform.animation使用
- arguments转换为数组格式
var agArr = []; for(var i = 0; i < arguments.length; i++) { agArr.push(arguments[i]) }
- U盘FAT32文件系统转换成NTFS文件系统
首先 点击-开始--运行---输入CMD ----输入convert X:/FS:NTFS 其中 X是U盘所在的盘符
- MySQL临时表创建
和SQL SERVER 创建临时表不同 不能直接写 Create table #Test_Table 而是需要在 Create 和 table 之间 加入 TEMPORARY(temporary< ...
- javascript知识点总结----Function定义
---恢复内容开始--- 函数Function: 函数实际上是对象,每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法,函数名实际上是一个指向函数的指针,不会与某个函数绑定 ...
- 【231】◀▶ 利用 IDL 读取 TIFF 数据
参考:Create Latitude/Longitude Arrays for GeoTIFF Image 用到的函数为 READ_TIFF,通过此函数可以获取 TIFF 数据的数组信息,同时可以获取 ...
- SQL Server 的表数据简单操作(表数据查询)
--表数据查询----数据的基本查询-- --数据简单的查询--select * | 字段名[,字段名2, ...] from 数据表名 [where 条件表达式] 例: use 商品管理数据库 go ...
- ActiveMQ学习笔记(5)——使用Spring JMS收发消息
摘要 ActiveMQ学习笔记(四)http://my.oschina.net/xiaoxishan/blog/380446 中记录了如何使用原生的方式从ActiveMQ中收发消息.可以看出,每次 ...
- npm库下载缓慢解决方案
淘宝针对国内下载npm库缓慢的问题,使用建立自己的cnpm库,可以很方便使用在公司内部使用. 地址:http://npm.taobao.org/ $ npm install -g cnpm --reg ...