<select id="I0203F0004SQL001"
parameterType="com.dsunsoft.cqhzz.sql.dto.I0203.I0203F0004SQL001DbcIU001"
resultType="com.dsunsoft.cqhzz.sql.dto.I0203.I0203F0004SQL001DbcOU001">
SELECT
t1.USER_ID AS userId,
t1.USER_NM AS userNm,
t2.EMP_NM AS empNm,
t1.PWD AS pwd,
t1.TEL AS tel,
t1.E_MAIL AS eMail,
t1.WE_CHAT AS weChat,
t1.EMP_ID AS empId,
t1.CREATED_BY AS createdBy,
t1.CREATED_DATE AS createdDate,
t1.LAST_MODIFIED_BY AS lastModifiedBy,
t1.LAST_MODIFIED_DATE AS lastModifiedDate,
t1.IS_DEL AS isDel,
t1.AVATAR AS avatar,
t3.roleNms AS roleNms,
t4.rvSegNms AS rvSegNms,
t5.ADDVNM AS addvnm,
t5.ADDVCD_PATH AS addvcdPath,
t5.ADDVNM_PATH AS addvnmPath
FROM
TB_WR_SYS_USER t1
LEFT JOIN
TB_WR_SYS_EMP t2 ON t1.EMP_ID = t2.EMP_ID
LEFT JOIN
(SELECT t11.USER_ID,
LISTAGG(t21.ROLE_NM, ‘,‘) WITHIN GROUP (ORDER BY t11.ROLE_ID) AS roleNms
FROM TB_WR_SYS_USER_ROLE t11,TB_WR_SYS_ROLE t21
WHERE t11.ROLE_ID = t21.ROLE_ID
GROUP BY t11.USER_ID) t3 ON t1.USER_ID = t3.USER_ID
LEFT JOIN
(SELECT t11.EMP_ID,
LISTAGG(t21.RV_SEG_NM, ‘,‘) WITHIN GROUP (ORDER BY t21.ORDER_INDEX) AS rvSegNms
FROM TB_WR_RPS_EMP t11,TB_WR_RV_SEG t21
WHERE t11.RV_SEG_ID = t21.RV_SEG_ID
GROUP BY t11.EMP_ID) t4 ON t1.EMP_ID = t4.EMP_ID
LEFT JOIN
TB_ADDV_B t5 ON t2.ADDVCD = t5.ADDVCD
<where>
(t1.IS_DEL = 0 OR t1.IS_DEL IS NULL)
<if test="userId != null">
AND t1.USER_ID = #{userId, jdbcType=VARCHAR}
</if>
<if test="userNm != null and userNm != ‘‘">
AND t1.USER_NM LIKE ‘%${userNm}%‘
</if>
<if test="empId != null and empId != ‘‘">
AND t1.EMP_ID = #{empId, jdbcType=VARCHAR}
</if>
<if test="tel != null and tel !=‘‘">
AND t1.TEL = #{tel, jdbcType=VARCHAR}
</if>
<if test="addvcdPath != null and addvcdPath !=‘‘">
AND t5.ADDVCD_PATH LIKE ‘%${addvcdPath}%‘
</if>
</where>
</select>
关于Oracle 合并字段
时间: 2024-10-24 20:38:24
关于Oracle 合并字段的相关文章
oracle 合并多个sys_refcursor
oracle 合并多个sys_refcursor 一.背景 在数据开发中,有时你需要合并两个动态游标sys_refcursor. 开发一个存储过程PROC_A,这个过程业务逻辑相当复杂,代码篇幅较长.一段时间后要开发一个PROC_B,要用PROC_A同样的逻辑,而且在这个过程中,还要循环调用PROC_A这个过程.摆在你面前的有两个选择. 打开PL/SQL,仔细的读PROC_A这个过程,一直到明白了所有的逻辑,然后在自己的过程中重写这个逻辑 . 直接复制PROC_A这个过的代码过来,多写极端.还是
Oracle修改字段类型和长度
Oracle修改字段名 alter table 表名 rename column 旧字段名 to 新字段名 Oracle修改字段类型和长度 alter table 表名 modify 字段名 数据类型 如果是修改数据类型比如由varchar2修改为int且字段内有值,会报如下错误 解决方法参考:http://blog.csdn.net/itmyhome1990/article/details/8681206 转载请注明出处:http://blog.csdn.net/itmyhome1990/ar
java 读写Oracle Blob字段
许久没有分享代码了,把这段时间写的一个Java操作Blob字段,有日子没写Java了,就当作笔记记录一下.1. [代码][Java]代码 跳至 [1] [全屏预览]package com.wanmei.meishu;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileReader;import java.io.InputStream;import java.io.OutputS
Aspose.Words使用教程之如何重命名合并字段
本文为Aspose.Words使用教程--重命名合并字段,什么是Aspose.Words呢?它是一款先进的文 档处理控件!有什么用呢?无需MS Word也可执行各种文档处理任务,包括文档的生成.修改.渲染.打印,文档格式转换和邮件合并等文档处理! 一个示例展示如何创建自己的合并字段类,代表一个在微软的Word文档中允许您获取或设置它的名称的合并字段. Example 如何在一个文档里重命名字段. C# using System; using System.Text; using Sys
探究oracle clob字段是如何存储的
clob字段存储的是文本,如果存储少于4000个字节则clob字段会和记录存放在一起,如果存储超过4000个字节,则不会与记录存放在一起.值得注意的是,这里的4000个字节并不是等同于varchar2(4000),那相当于什么呢,请看下列实验,数据库版本是10.2.0.1.0: drop table test_clob purge; create table test_clob ( id number, clob1 clob ); insert into test_clob values(1,
[Oracle]根据字段值全库搜索相关数据表和字段
这个需求比较冷门,但对于在某些特定的情况下,还是会有这样的需要的.好在Oracle实现还比较方便,用存储过程则轻松实现. 查询字符串: create or replace procedure search_string(pString in varchar) as cursor all_tab_cursor is select a.owner, a.table_name, b.column_name from dba_tables a, dba_tab_columns b, dba_object
sql server 合并字段
合并字段用+号连接就可以了,不过要判断是不是有的合并项为NULL.如果其中一项为NULL,则整个合并字段为NULL. (IsNull(a.supplier, '') + IsNull(a.po, '') + IsNull(a.inv, '') + IsNull(a.REMARK, '') ) as REMARK 用IsNull函数来规避这种情况
Oracle 同名字段的该行数据按照创建时间最新的隐藏其他
1.需求,表 SYS_INFO 的 NAME 字段会重复,按照 创建时间CREATE_AT 字段,取最新一条,其他隐藏 SELECT * FROM (SELECT T.*,ROW_NUMBER() OVER(PARTITION BY NAME ORDER BY CREATE_AT DESC) AS RN FROM sys_info T) WHERE RN=1 Oracle 同名字段的该行数据按照创建时间最新的隐藏其他
sql合并字段
<!-- 对发送方式合并查询 --> <!--查询所有满足条件的营销活动 --> <select id="CRM-MK-ACT-DEFINE-SELECT" resultMap="RM-MK-ACT-DEFINE-INFO"> select mad.msg_def_name ,mad.msg_def_type,mad.msg_def_content,mad.id, mad.act_start_date,mad.act_end_da