# FUnitComparison

- Human documentation: [https://docs.univer.ai/reference/facade/unit-comparison](https://docs.univer.ai/reference/facade/unit-comparison)

- Agent Markdown: [https://docs.univer.ai/reference/facade/unit-comparison.md](https://docs.univer.ai/reference/facade/unit-comparison.md)

- Requested language: `en-US`

- Content language: `en-US`

- Documentation version: `1.0.0-rc.0`

- Source: [facade/unit-comparison.mdx](https://github.com/dream-num/documentation/blob/dev/content/reference/facade/unit-comparison.mdx)

---

A prepared semantic comparison that can be filtered and paged without rerunning product algorithms.

## Access

Access through:

* [`FUniver.prepareUnitComparison()`](https://docs.univer.ai/reference/facade/univer.md#prepareunitcomparison)

## Setup

Register [`@univerjs-pro/edit-history`](https://docs.univer.ai/reference/packages/plugins/univerjs-pro/edit-history.md) or a preset that includes it. In plugin mode, import `@univerjs-pro/edit-history/facade`. Additional methods below require their listed plugin packages. See [Facade setup](https://docs.univer.ai/guides/sheets/getting-started/facade.md).

## `@univerjs-pro/edit-history`

### `FUnitComparison.query`

Filters and pages this prepared comparison.

Product views can be discovered from `query().scopes`, then passed back through `query.scope` to request
only the selected worksheet, slide, Base table, or Board page without rerunning the comparison algorithm.

```typescript
query(query?: IUnitComparisonQuery): IUnitComparisonResult
```

**Parameters**

* `query` — Optional. Optional scope, filters, result detail, and independent item/context pagination.

**Returns**

A versioned, serializable comparison result.

**Examples**

```ts
const comparison = univerAPI.prepareUnitComparison(input)
const overview = comparison.query({ detail: UnitComparisonDetailLevel.SUMMARY })
const firstScope = overview.scopes[0]
const items =
  firstScope === undefined
    ? overview.items
    : comparison.query({ scope: firstScope, limit: 1000 }).items
```

**Types:** [`IUnitComparisonResult`](https://unpkg.com/@univerjs-pro/edit-history@1.0.0-rc.0/lib/types/comparison/types.d.ts) · [`IUnitComparisonQuery`](https://unpkg.com/@univerjs-pro/edit-history@1.0.0-rc.0/lib/types/comparison/types.d.ts)

**Package:** [`@univerjs-pro/edit-history`](https://docs.univer.ai/reference/packages/plugins/univerjs-pro/edit-history.md) · [Type definitions](https://unpkg.com/@univerjs-pro/edit-history@1.0.0-rc.0/lib/types/facade/f-univer.d.ts)
