700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > atitit。mssql sql server 转换mysql 及 分页sql ast的搭建

atitit。mssql sql server 转换mysql 及 分页sql ast的搭建

时间:2024-04-06 20:42:39

相关推荐

atitit。mssql sql server 转换mysql  及 分页sql ast的搭建

atitit。mssqlsqlserver转换mysql及分页sqlast的搭建

1.主要的的转换::函数的转换,分页的转换 1

2.思路::mssqlsql>>ast>>mysql 1

3.sql主要的如下::: 1

4.Mssql2MysqlConvertor(proj:wechatAdm4propt 2

1.主要的的转换::函数的转换,分页的转换

2.思路::mssqlsql>>ast>>mysql

3.sql主要的如下:::

作者::老哇的爪子Attilax艾龙,EMAIL:1466519819@

转载请注明来源:/attilax

SELECTgroupid,

groupname,

convert(varchar,createtime,120)AScreatetime,

weixinuserCount,

remark

FROM

(SELECTrow_number()over(ORDERBYcreatetimeDESC)ASrowNum,d1.groupid,

d1.groupname,

d1.createtime,

d1.remark,

(SELECTcount(d2.UserID)

FROMt_mb_weixinuserd2

WHEREd2.groupid=d1.groupid)ASweixinuserCount

FROMt_mb_groupd1

WHERE1=1)

ASgroups

WHERErowNumBETWEEN1AND10

4.Mssql2MysqlConvertor(proj:wechatAdm4propt

publicclassMssql2MysqlConvertor{

@Inject

SqlAstBuilderP32astBldr;

SqlAstP32ast;

/**

*@authorattilax老哇的爪子

*@sincep33j_t_37

*/

publicstaticvoidmain(String[]args){

Stringtxt=filex.read(pathx.classPath()+"/mssql1.sql");

txt=strUtil.replaceEnterChar2space(txt);

txt=txt.replaceAll("row_number.*?,","");

Mssql2MysqlConvertorx=newMssql2MysqlConvertor();

Stringsql_mysql=x.convert(txt);

System.out.println(JsonX.toJsonStrO88(x.ast));

System.out.println(sql_mysql);

}

/**

*@authorattilax老哇的爪子

*@return

*@sincep33m_j_45

*/

privateStringconvert(Stringtxt){

Stringpage_s=strUtil.find("rowNum(.+)BETWEEN.+and.+$",txt).get(0)

.toString();

page_s=strUtil.replaceDoubleSpace(page_s);

String[]a=page_s.toUpperCase().trim().split("BETWEEN");

String[]a2=a[1].toLowerCase().trim().split("and");

SqlPageParamp=newSqlPageParam();

p.startIndex=Integer.parseInt(a2[0].trim())-1;

p.pagesize=Integer.parseInt(a2[1].trim());

ast=newSqlAstP32();

ast.preOther=txt.substring(0,txt.indexOf(page_s));

ast.pagePart=p;

if(ast.preOther.trim().toLowerCase().endsWith("where"))

ast.preOther=ast.preOther+"1=1";

returnast.preOther+"limit"+p.startIndex+","+p.pagesize;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。