我们有一个web应用程序,帮助组织生物实验(用户描述实验和上传实验数据)。在主页中,我们展示了前10个实验,然后在上一个下一个1 2 3..30.
我虫子我如何使有效的总计数和分页。目前:
select count(id) from experiments; // not very efficient in large datasets
我想开发分页,总是执行相同的。记录计数不得影响分页或记录总数。
请进行如下查询:
CREATE PROCEDURE [GetUsers]
(
@Inactive Bit = NULL,
@Name Nvarchar(500),
@Culture VarChar(5) = NULL,
@SortExpression VarChar(50),
@StartRowIndex Int,
@MaxRowIndex Int,
@Count INT OUTPUT
)
AS
BEGIN
SELECT ROW_NUMBER()
OVER
(
ORDER BY
CASE WHEN @SortExpression = 'Name' THEN [User].[Name] END,
CASE WHEN @SortExpression = 'Name DESC' THEN [User].[Name] END DESC
) AS RowIndex, [User].*
INTO #tmpTable
FROM [User] WITH (NOLOCK)
WHERE (@Inactive IS NULL OR [User].[Inactive] = @Inactive)
AND (@Culture IS NULL OR [User].[DefaultCulture] = @Culture)
AND [User].Name LIKE '%' + @Name + '%'
SELECT *
FROM #tmpTable WITH (NOLOCK)
WHERE #tmpTable.RowIndex > @StartRowIndex
AND #tmpTable.RowIndex < (@StartRowIndex + @MaxRowIndex + 1)
SELECT @Count = COUNT(*) FROM #tmpTable
IF OBJECT_ID('tempdb..#tmpTable') IS NOT NULL DROP TABLE #tmpTable;
END
我有大量的数据,我希望高效地(即使用相对较小的Spark群集)执行其中一列的计数和区分操作。 如果我做什么似乎很明显,即加载数据到数据帧: 然后尝试运行查询: 我的群集只是崩溃和烧毁—抛出内存不足异常或挂起/崩溃/未完成操作。 我猜在这条路上的某个地方,有某种连接会让遗嘱执行人的记忆荡然无存? 当源数据大规模而目标数据不是时,执行这样的操作的理想方法是什么(上述查询中的域列表相对较短,应该很容易适
问题内容: 我正在为我的系统中的实体实现“高级搜索”类功能,以便用户可以使用对该实体属性的多个条件(eq,ne,gt,lt,like等)来搜索该实体。我正在使用JPA的Criteria API动态生成Criteria查询,然后使用&支持分页。到现在为止一切都很好,但是现在我想在结果网格上显示结果总数,但是我没有看到直接获取Criteria查询总数的直接方法。 这是我的代码的样子: 我的结果集可能很
我想做的是利用我对连续负二项分布进行抽样的事实,这是得到头部所需要的试验数的分布,也就是说,如果f(X)是这个分布,那么f(X)给出了在我们遇到头部之前有X个尾部的概率,其中X不必是整数。如果我能对这个分布进行采样,那么我能做的就是,如果X是尾部的数量,那么我就能看到X是大于还是小于信用的数量;如果大于,那么我们用完所有的学分,但什么也没有发生,如果小于或等于,那么好事发生了,我们从学分的数目中减
假设我有一个字典数组: 我如何排序,使它是降序,按“id”排序? 但我知道这是错误的,也不是有效的。
问题内容: 我有一个典型的客户/订单中设置的表,我想显示总 百分比 销售的特定客户负责。我可以像这样获得系统中的订单总数: 这样我就可以得到客户发出的订单总数: 如何将它们组合成一个查询,以返回特定客户的销售百分比?谢谢! 问题答案: MySQL: 编辑 我想如果我注意到 postgres 标签会有所帮助。我认为这是一个MySQL问题。 PostgreSQL: PS我的PostgreSQL生锈了,
问题内容: 我想通过ORM进行一个非常简单的查询,但无法弄清楚。 我有三种模式: 位置(位置),属性(位置可能具有的属性)和评分(也包含得分字段的M2M“直通”模型) 我想选择一些重要的属性,并能够通过这些属性对我的位置进行排名-即,所有选定属性的总分更高=更好。 我可以使用以下SQL来获取所需的内容: 哪个返回 | 我可以通过ORM得到的最接近的是: 哪个返回 即所有的总和,而不是按位置分组。