---
title: "Query(filter:sort:transaction:)"
framework: swiftdata
role: symbol
role_heading: Macro
path: "swiftdata/query(filter:sort:transaction:)"
---

# Query(filter:sort:transaction:)

Fetches and sorts the subset of the attached model type that satisfy the specified predicate.

## Declaration

```swift
@attached(accessor) @attached(peer, names: prefixed(`_`)) macro Query<Element>(filter: Predicate<Element>? = nil, sort descriptors: [SortDescriptor<Element>] = [], transaction: Transaction? = nil) where Element : PersistentModel
```

## Parameters

- `filter`: The logical condition the query uses to determine if it returns a specific model instance.
- `descriptors`: An array of sort descriptors to use when arranging the fetched models.
- `transaction`: The transaction to use when updates to the fetched models trigger user interface changes.

## See Also

### Predicate-based queries

- [Query(filter:sort:animation:)](swiftdata/query(filter:sort:animation:).md)
- [Query(filter:sort:order:animation:)](swiftdata/query(filter:sort:order:animation:)-80h6f.md)
- [Query(filter:sort:order:animation:)](swiftdata/query(filter:sort:order:animation:)-pb15.md)
- [Query(filter:sort:animation:sectionBy:)](swiftdata/query(filter:sort:animation:sectionby:)-1s3xp.md)
- [Query(filter:sort:animation:sectionBy:)](swiftdata/query(filter:sort:animation:sectionby:)-82mot.md)
- [Query(filter:sort:order:animation:sectionBy:)](swiftdata/query(filter:sort:order:animation:sectionby:)-132tv.md)
- [Query(filter:sort:order:animation:sectionBy:)](swiftdata/query(filter:sort:order:animation:sectionby:)-66vd3.md)
- [Query(filter:sort:order:animation:sectionBy:)](swiftdata/query(filter:sort:order:animation:sectionby:)-75r20.md)
- [Query(filter:sort:order:animation:sectionBy:)](swiftdata/query(filter:sort:order:animation:sectionby:)-7o0vo.md)
- [Query(filter:sort:order:transaction:)](swiftdata/query(filter:sort:order:transaction:)-6kkiu.md)
- [Query(filter:sort:order:transaction:)](swiftdata/query(filter:sort:order:transaction:)-8tk8u.md)
- [Query(filter:sort:order:transaction:sectionBy:)](swiftdata/query(filter:sort:order:transaction:sectionby:)-3cn7t.md)
- [Query(filter:sort:order:transaction:sectionBy:)](swiftdata/query(filter:sort:order:transaction:sectionby:)-6c6ho.md)
- [Query(filter:sort:order:transaction:sectionBy:)](swiftdata/query(filter:sort:order:transaction:sectionby:)-9mbr6.md)
- [Query(filter:sort:order:transaction:sectionBy:)](swiftdata/query(filter:sort:order:transaction:sectionby:)-i779.md)
