因此,我在 Crystal Reports 中创建了一份报告,其中一个部分从表中提取订单号,但仅显示客户的最新订单号。这个订单表非常大,我担心如果有人要运行大日期范围的报告, Crystal 会在不需要的时候从数据库中提取大量数据。
有没有办法限制 Crystal 提取订单号的记录数量?类似于 select top 20 * SQL 语句的工作原理。
好的,这里有一些关于我如何安排一切的更多信息。 我有一个这样的订单表:
<table border>
<tr><td colspan=3>Table Name = Orders</td></tr>
<tr><td>Date</td><td>Order Number</td><td>Customer Number</td></tr>
<tr><td>2015-09-01</td><td>12345</td><td>1</td></tr>
<tr><td>2015-09-01</td><td>12346</td><td>2</td></tr>
<tr><td>2015-09-01</td><td>12347</td><td>3</td></tr>
<tr><td>2015-09-02</td><td>12348</td><td>1</td></tr>
</table>
我有一个像这样的客户表:
<table border>
<tr><td colspan=3>Table Name = Customers</td></tr>
<tr><td>Customer Number</td><td>First Name</td><td>Last Name</td></tr>
<tr><td>1</td><td>John</td><td>Doe</td></tr>
<tr><td>2</td><td>Sara</td><td>Thomas</td></tr>
<tr><td>3</td><td>James</td><td>Jones</td></tr>
</table>
这两个表是链接的,它们将添加到我的报告中以显示如下内容:
日期范围:9 月 1 日至 9 月 5 日
客户:John Doe 订单号:12348
客户:萨拉·托马斯 订单号:12346
客户:詹姆斯·琼斯 订单号:12347
列表将显示在某个日期范围内添加的所有新客户,但订单号仅显示最近的订单。可能会发生的情况是,如果我运行几个月前的日期范围(例如 3 月 5 日至 4 月 5 日)的报告,它将显示该日期范围内的所有新客户,但会提取从 3 月 5 日到现在的所有订单号,并且然后只显示最近的订单。我想做的就是限制订单号,这样只提取前 20 条左右的订单。
最佳答案
与MySQL中的“SELECT TOP 20 ...”相同,是在查询末尾添加LIMIT X,例如:
SELECT * FROM table LIMIT 20;
仅获取前 20 行。如果您想对结果进行排序(例如“ASC”),请在“ORDER BY”之后使用“LIMIT”
关于mysql - 限制 Crystal Reports 从数据库中提取的记录数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32844887/