开源项目Druid的提取SQL模板
package com.lhm;
import com.alibaba.druid.sql.SQLUtils;
import com.alibaba.druid.sql.visitor.ParameterizedOutputVisitorUtils;
import com.alibaba.druid.util.JdbcConstants; /**
* @author :haimli
* @email : 912547587@qq.com
* @datetime:2017年9月12日下午7:26:27
*/
public class SQLFormat { public static void main(String[] args) {
// TODO Auto-generated method stub
//给定需要格式化的SQL语句
//String sql = "select id,name from lhm where id=1 and name='lihaiming' and 1=3";
//String sql = "select a,b from c where a='33' and b='ddd'";
String sql = "select b,a from c where a='33' and b='ddd' and a in ('33','332','334')"; //指定数据库类型
String dbtype = JdbcConstants.MYSQL;
String fs = ParameterizedOutputVisitorUtils.parameterize(sql, dbtype); System.out.println("fs:\n"+fs);
}
}
select b,a from c where a='' and b='ddd' and a in ('','','')
SELECT b, a
FROM c
WHERE a = ?
AND b = ?
AND a IN (?)
String sql = "select rownum,organ_level4,organ_name4,user_no,user_name,pzl_num,xf_ccn from (select t.organ_level4,t.organ_name4,t.user_no,t.user_name,sum(t.pzl_num) pzl_num,sum(t.xf_ccn) xf_ccn from rt_smtj_tb t,sm_user_organ_tb a,sm_organ_tb b where 2>1 and a.organ_no=b.organ_no and b.organ_no=t.organ_level4 and b.organ_level=4 and a.user_no='#DEAL_USERNO#' group by t.organ_level4,t.organ_name4,t.user_no,t.user_name order by sum(t.pzl_num) desc,user_no)";
//String sql = "select id,name from lhm where id=1 and name='lihaiming' and 1=3";
//String sql = "select a,b from c where a='33' and b='ddd'";
//String sql = "select b,a from c where a='33' and b='ddd' and a in ('33','332','334')"; //指定数据库类型
String dbtype = JdbcConstants.MYSQL;
String fs = ParameterizedOutputVisitorUtils.parameterize(sql, dbtype); System.out.println("fs:\n"+fs);
select rownum,
organ_level4,
organ_name4,
user_no,
user_name,
pzl_num,
xf_ccn
from (select t.organ_level4,
t.organ_name4,
t.user_no,
t.user_name,
sum(t.pzl_num) pzl_num,
sum(t.xf_ccn) xf_ccn
from rt_smtj_tb t, sm_user_organ_tb a, sm_organ_tb b
where 2 > 1
and a.organ_no = b.organ_no
and b.organ_no = t.organ_level4
and b.organ_level = 4
and a.user_no = '#DEAL_USERNO#'
group by t.organ_level4, t.organ_name4, t.user_no, t.user_name
order by sum(t.pzl_num) desc, user_no)
SELECT rownum, organ_level4, organ_name4, user_no, user_name
, pzl_num, xf_ccn
FROM (
SELECT t.organ_level4, t.organ_name4, t.user_no, t.user_name
, SUM(t.pzl_num) AS pzl_num, SUM(t.xf_ccn) AS xf_ccn
FROM rt_smtj_tb t, sm_user_organ_tb a, sm_organ_tb b
WHERE ? > ?
AND a.organ_no = b.organ_no
AND b.organ_no = t.organ_level4
AND b.organ_level = ?
AND a.user_no = ?
GROUP BY t.organ_level4, t.organ_name4, t.user_no, t.user_name
ORDER BY SUM(t.pzl_num) DESC, user_no
)
开源项目Druid的提取SQL模板的更多相关文章
- 阿里开源项目 druid 相关资料汇总
项目发起人访谈:http://www.iteye.com/magazines/90 github主页:https://github.com/alibaba/druid druid 项目,我想我能用很短 ...
- 阿里巴巴的开源项目Druid(关于数据库连接)
1 配置 和dbcp类似,druid的常用配置项如下 配置 缺省值 说明 name 配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来.如果没有配置,将会生成一个名字,格 ...
- Druid——阿里巴巴的开源项目(关于数据库连接、监控)
相关文章 0.Druid首页——jdbc连接池,监控组件 1.阿里巴巴的开源项目Druid(关于数据库连接) 2.ITeye谈Druid 3.DBCP(DataBase connection pool ...
- [ionic开源项目教程] - 第13讲 Service层优化,提取公用Service,以及生活和农业两大模块的实现
关注微信订阅号:TongeBlog,可查看[ionic开源项目]全套教程. 这一讲主要实现生活和农业两大模块的实现,在这个过程中,对service层提取出一个公用的BaseService. 这一讲分为 ...
- [ionic开源项目教程] - 第12讲 医疗模块的实现以及Service层loadMore和doRefresh的提取封装
关注微信订阅号:TongeBlog,可查看[ionic开源项目]全套教程. 这一讲主要实现tab2[医疗]模块,[医疗]模块跟tab1[健康]模块类似. [ionic开源项目教程] - 第12讲 医疗 ...
- 关键词提取自动摘要相关开源项目,自动化seo
关键词提取自动摘要相关开源项目 GitHub - hankcs/HanLP: 自然语言处理 中文分词 词性标注 命名实体识别 依存句法分析 关键词提取 自动摘要 短语提取 拼音 简繁转换https:/ ...
- .NET Core/.NET5/.NET6 开源项目汇总13:模板引擎
系列目录 [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...
- 利用开源项目 FFMpegSharp 实现音视频提取、转码、抓图等操作
开源项目地址:https://github.com/vladjerca/FFMpegSharp 首先需要在 web.config 或 app.config 中配置 <appSettings> ...
- JAVA上百实例源码以及开源项目
简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级.中级.高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情.执着,对IT的憧憬. ...
随机推荐
- 游走[HNOI2013]
[题目描述] 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获得等于这 ...
- mysql控制台出现“unknown column 'password' in 'field list'问题
今天在windows系统上使用MySQL命令时,出现下面的"unknown column 'password' in 'field list'问题 解决办法如下,使用authenticati ...
- JSP和El表达式和JSTL标签库使用
核心标签库: <%@ page language="java" import="java.util.*" pageEncoding="utf-8 ...
- CentOS 常用命令及快捷键整理
常用命令: 文件和目录: # cd /home 进入 '/home' 目录 # cd .. ...
- hdu--1077--Catching Fish
思路: 1.枚举两点确定圆心,大于2不用考虑 2.逐个判断判断距圆心的距离小于1.00001符合题意 这个题,主要在求圆心上废了不少功夫,但是仍存在问题 #include<iostrea ...
- hdu--4148--Length of S(n)
#include<iostream> #include<string> #include<cstring> void priTable(); using names ...
- HashMap 源码解读
HashMap在JDK1.7和1.8中有了很大的改变,空闲时间对HashMap做了一点点的研究. HashMap是一种数组和链表结合的数据结构,我们每次new一个HashMap时,都会构造出一个长度为 ...
- Luogu P1576 最小花费
题目背景 题目描述 在n个人中,某些人的银行账号之间可以互相转账.这些人之间转账的手续费各不相同.给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元 ...
- angular select 遍历使用ng-option绑定的时候下面多出一个空白的option处理方法
只需要在select中加入一个 <option value="" selected hidden></option>
- Windows Firewall Setting
If our web site hosted on web server canot be accessed by other computer by public network, one of t ...