ObjectiveSQL 正式发布 1.4.3 版本

栏目: 软件资讯 · 发布时间: 4年前

内容简介:各位,本次新版本做了比较大的优化,主要修复的问题如下:#79,#48,#67,#56 项目地址:https://github.com/braisdom/ObjectiveSql 重点特性介绍: 1)优化SQL 生成逻辑 Order.Table orderTable = Order.asTab...

各位,本次新版本做了比较大的优化,主要修复的问题如下:#79#48#67#56

项目地址:https://github.com/braisdom/ObjectiveSql

重点特性介绍:

1)优化 SQL 生成逻辑

Order.Table orderTable = Order.asTable();
Select select = new Select();

select.project((sum(orderTable.amount) / sum(orderTable.quantity) * 100).as("unit_amount"))
        .from(orderTable)
        .where(orderTable.quantity > 30 &&
                orderTable.salesAt.between("2020-05-02 23:59:59", "2020-05-02 23:59:59"))
        .groupBy(orderTable.memberId);
SELECT (SUM(`orders_t0`.`amount` ) / SUM(`orders_t0`.`quantity` ) * 100) AS unit_amount
FROM `orders` AS `orders_t0`
WHERE `orders_t0`.`quantity` > 30 AND `orders_t0`.`sales_at` BETWEEN '2020-05-01 00:00:00' AND '2020-05-02 23:59:59'
GROUP BY `orders_t0`.`member_id`

深度解析javac 构建AST 过程,对执行优先级和括号进行解析,生成完全符合 Java 编码的SQL 语句

2)永真表达式(实现动态SQL 构建)

Order.Table orderTable = Order.asTable();
Select select = new Select();
LogicalExpression eternalExpression = new EternalExpression();

if(filteredNo.length > 0) {
    eternalExpression = eternalExpression.and(orderTable.no.in(filteredNo));
}

if(filteredQuantity != 0) {
    eternalExpression = eternalExpression.and(orderTable.quantity > filteredQuantity);
}

select.project((sum(orderTable.amount) / sum(orderTable.quantity) * 100).as("unit_amount"))
        .from(orderTable)
        .where(eternalExpression)
        .groupBy(orderTable.memberId);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Sass and Compass in Action

Sass and Compass in Action

Wynn Netherland、Nathan Weizenbaum、Chris Eppstein、Brandon Mathis / Manning Publications / 2013-8-2 / USD 44.99

Written by Sass and Compass creators * Complete Sass language reference * Covers prominent Compass community plug-ins * Innovative approach to creating stylesheets Cascading Style Sheets paint the we......一起来看看 《Sass and Compass in Action》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试