当前位置: 首页 > news >正文

网站开发费用做账网站策划书格式及范文

网站开发费用做账,网站策划书格式及范文,wordpress 木马,网页浏览器主要通过什么协议目录 前言一、Maven依赖二、获取sql中的表名三、获取sql中的具体信息 前言 JSqlParser是一个 SQL 语句解析器。它将 SQL 语句转换为可遍历的 Java 类层次结构,可以方便的用代码对 SQL 语句进行解析,修改等操作。 官网 api 文档和 github 地址如下&…

目录

  • 前言
  • 一、Maven依赖
  • 二、获取sql中的表名
  • 三、获取sql中的具体信息

前言

JSqlParser是一个 SQL 语句解析器。它将 SQL 语句转换为可遍历的 Java 类层次结构,可以方便的用代码对 SQL 语句进行解析,修改等操作。

官网 api 文档和 github 地址如下:

jsqlparser API 文档

jsqlparser github 地址

一、Maven依赖

        <!-- 4.9版本是适用于jdk8的最后一个版本--><dependency><groupId>com.github.jsqlparser</groupId><artifactId>jsqlparser</artifactId><version>4.9</version></dependency>

二、获取sql中的表名

import net.sf.jsqlparser.JSQLParserException;
import net.sf.jsqlparser.util.TablesNamesFinder;
import java.util.Set;public class MainServer {public static void main(String[] args) throws JSQLParserException {String sql = "SELECT e.employee_id, e.first_name, e.last_name, d.department_name, e.salary " +"FROM employees e " +"LEFT JOIN departments d ON e.department_id = d.department_id " +"WHERE e.salary > ( " +"    SELECT AVG(salary) " +"    FROM staff " +"    WHERE department_id = e.department_id " +");";Set<String> tableNames = TablesNamesFinder.findTables(sql);//输出: staff, departments, employeesSystem.out.println(tableNames);}
}

三、获取sql中的具体信息

import javassist.CannotCompileException;
import net.sf.jsqlparser.JSQLParserException;
import net.sf.jsqlparser.parser.CCJSqlParserUtil;
import net.sf.jsqlparser.statement.Statement;
import net.sf.jsqlparser.statement.select.PlainSelect;
import net.sf.jsqlparser.statement.select.Select;public class MainServer {public static void main(String[] args) throws CannotCompileException, JSQLParserException {String sql = "SELECT DISTINCT e.employee_id, e.first_name, e.last_name, d.department_name, e.salary " +"FROM employees e " +"LEFT JOIN departments d ON e.department_id = d.department_id " +"WHERE e.salary > ( " +"    SELECT AVG(salary) " +"    FROM staff " +"    WHERE department_id = e.department_id " +") " +"GROUP BY d.department_id, e.employee_id, e.first_name, e.last_name, d.department_name, e.salary " +"HAVING COUNT(*) = 1  " +"ORDER BY d.department_name " +"LIMIT 10 OFFSET 20;";Statement statement = CCJSqlParserUtil.parse(sql);//如果是 select 语句if (statement instanceof Select) {Select selectStatement = (Select) statement;PlainSelect plainSelect = selectStatement.getPlainSelect();System.out.println("【DISTINCT 子句】:" + plainSelect.getDistinct());System.out.println("【查询字段】:" + plainSelect.getSelectItems());System.out.println("【FROM 表】:" + plainSelect.getFromItem());System.out.println("【JOIN 子句】:" + plainSelect.getJoins());System.out.println("【WHERE 子句】:" + plainSelect.getWhere());System.out.println("【GROUP BY 子句】:" + plainSelect.getGroupBy());System.out.println("【HAVING 子句】:" +plainSelect.getHaving());System.out.println("【ORDER BY 子句】:" + plainSelect.getOrderByElements());System.out.println("【LIMIT 子句】:" + plainSelect.getLimit());System.out.println("【OFFSET 子句】:" + plainSelect.getOffset());}}
}

输出:

DISTINCT 子句】:DISTINCT
【查询字段】:[e.employee_id, e.first_name, e.last_name, d.department_name, e.salary]FROM 表】:employees e
【JOIN 子句】:[LEFT JOIN departments d ON e.department_id = d.department_id]WHERE 子句】:e.salary > (SELECT AVG(salary) FROM staff WHERE department_id = e.department_id)GROUP BY 子句】:GROUP BY d.department_id, e.employee_id, e.first_name, e.last_name, d.department_name, e.salary
【HAVING 子句】:COUNT(*) = 1ORDER BY 子句】:[d.department_name]LIMIT 子句】: LIMIT 10OFFSET 子句】: OFFSET 20

参考:
JSqlParser实战指南
JSQLParser 解析复杂SQL
JSqlParser入门系列
jsqlparser基本使用

http://www.yayakq.cn/news/88044/

相关文章:

  • python做电商网站安康学院的费用
  • 手机记事本做网站wordpress如何使用父导航可点击
  • 沂南建设局网站建设信用卡中心网站首页
  • 网站制作费用需要多少钱海口网红图书馆
  • 网站建设文字wordpress 添加页面模板
  • 开发网站制作网站链接
  • 台州企业网站东莞找工作求职招聘
  • 公司网站在国外打开很慢使用cdn好还是国外租用服务器好miit网站备案
  • 做网站推广如何phpcms v9
  • 惠州外贸网站建设vultr宝塔wordpress
  • 做爰全过程免费的视频凤凰网站seo站群优化技术
  • 微信开发者平台入口广西网站建设产品优化
  • 紫搜做网站做p2p网站案例
  • 电子商务网站建设与维护考试题汽配网站建设成本
  • seo网站是什么企业网站优化与推广
  • 漂亮企业网站商城建站报价方案
  • 网站阵地建设管理wordpress新主题
  • 个人网站可以备案月入百万的游戏代理
  • 免费网站制造如何新建wordpress
  • 建站平台 绑定域名哪个网站做h5好用
  • 商城网站建设快速服务有哪些学校的网站做的好处
  • 建设网站的原则wordpress 加宽文章页
  • 做网站收多少钱防红短网址一键生成
  • go网站做富集分析长宁广州网站建设
  • 用帝国软件做网站的心得接外贸单的平台
  • 网站seo报表建设微信网站的流程
  • 网站没有索引量是什么意思陕西省建设集团公司网站
  • 深圳企业网站制作维护wordpress 社交账号 文章评论
  • 做网站买完域名还要网站首页英文
  • 西安网站设计试听黑镜主题2.0wordpress