假设我们只需要从一个表中获取5条记录,但是我的where子句与数据库中的25k条记录匹配。那么,ofbiz
框架中是否有一种方法可以只选择5条记录,而不是从数据库中获取列表,然后仅从列表中获取5条记录?
如果不可能达到限制(因为ofbiz
API与数据库无关),我还有其他选择吗?
我建议您看看这个实体引擎食谱
本质上是为了从数据库中获取有限的行集,您可以这样做:
// first get a list iterator
productsELI = delegator.findListIteratorByCondition("Product",
new EntityExpr("productId", EntityOperator.NOT_EQUAL, null),
UtilMisc.toList("productId"), null);
// then get a partial list by count TO RETURN first 5 records
productsELI.getPartialList(0, 5);
// and finally just close the iterator
productsELI.close();
另外,如果您希望将 直接SQL 发送 到数据库, 则只需执行以下操作:
// gets the helper (localmysql, localpostgres, etc.) for your entity group org.ofbiz
String helperName = delegator.getGroupHelperName("org.ofbiz");
SQLProcessor sqlproc = new SQLProcessor(helperName);
sqlproc.prepareStatement("SELECT * FROM PARTY LMIT 0, 5");
ResultSet rs1 = sqlproc.executeQuery();
// and then get your data from ResultSet like regular JDBC
我有到UTC的秒偏移量,数据库中存储的所有时间戳都是UTC,如何在选择查询期间应用偏移量, 我想在UTC时间插入数据库并在本地时间检索。 在PHP上: 我可以在select的mysql运行时中减去unix\u timestamp字段$user\u timezone\u offset吗? 我正在插入UTC,这显然是我所需要的,但为了选择用户的本地时间,我需要以某种方式将偏移量应用于存储在数据库中的时
我得到了这段代码,但我认为这是不好的方法,如果有像100K的结果,它会返回100K的新用户怎么办?对于,我是否可以使用其他方法,但我不太确定如何实现。另外,是否应该使用块?
假设我有一个名为“批处理”的主题,有一个分区,我向它发布了数百万条记录以供处理。我有一个由3人组成的消费者小组来处理这些数以百万计的记录。我遇到了这样一种情况:我不再需要处理满足特定标准(如
我正在调查一个问题,在这个问题上,我们看到了与jooq尝试填充生成的记录类相关的奇怪异常,因为它使用java.sql,所以会出现数据类型错误。结果集::getXXX(int)(基于列索引)以获取数据。 我可以共享的堆栈跟踪部分如下所示: 这肯定是使用错误的列索引导致的列不匹配。 出现这个问题是因为我们在不断发展的模式上使用记录,所以底层表包含记录定义中不可用的列。 请注意,触发此操作的实际代码是:
我使用动物园管理员从Kafka获取数据。在这里,我总是从最后一个偏移点获取数据。有没有办法指定偏移时间来获取旧数据? 有一个选项“自动偏移”。重置。它接受最小的或最大的。有人能解释一下什么是最小的和最大的吗。可以自动偏移。重置有助于从旧偏移点而不是最新偏移点获取数据?
我的数据库表如下所示 我想要得到所有的一周的时间,有多少任务是在星期一,星期二...星期五创建的。如有任何帮助,我们将不胜感激。