---
title: Widoki logiczne
description: Używaj ponownie zapytań z typami i bez parametrów, rozwijanych przed sprawdzaniem, wyborem migawek i wykonaniem.
species: concept
---
# Widoki logiczne

Widok logiczny to nazwane zapytanie typesql bez parametrów. Supernova rozwija je w zapytaniu wywołującym przed kontrolą typów, dopuszczeniem przez polityki, wyborem migawek i wykonaniem.

```typesql
select customer_id, revenue
from finance.customer_revenue
where revenue > 1000
```

## Czym jest widok logiczny

Widok logiczny jest tekstem zapytania przeznaczonym do ponownego użycia. Nie jest widokiem Iceberg i nie materializuje danych. Każde odwołanie rozwija się do ujętego w nawiasy zapytania pochodnego z jednoznacznym aliasem.

Definicje używają nazw dwuczęściowych `[schema, view]` lub trzyczęściowych `[catalog, schema, view]`. Dopasowanie każdej części nie rozróżnia wielkości znaków ASCII, ale wywołujący przekazuje jeden zamknięty, autoryzowany zestaw definicji.

## Gwarancje rozwijania

Każda przekazana definicja musi zawierać dokładnie jedno zapytanie i nie może mieć parametrów pozycyjnych, nazwanych ani oznaczonych znakiem zapytania. Mechanizm rozumie zakresy relacji i kwalifikacji; nie wykonuje podmiany tekstu. Skorelowane podzapytanie nie może przypadkowo przechwycić wygenerowanego aliasu.

Artefakt rozwinięcia zapisuje zapytanie źródłowe, rozwinięty SQL, wszystkie użyte widoki oraz skrót SHA-256 każdej dokładnej definicji. Ta proweniencja uczestniczy w określaniu tożsamości dalszych wyników.

## Diagnostyka i limity

`TS0800` oznacza nieprawidłowe środowisko lub definicję. `TS0801` oznacza cykl. `TS0802` oznacza przekroczenie limitu. `TS0803` oznacza nieprawidłowy dokument widoku logicznego.

Środowisko przyjmuje maksymalnie 4096 widoków i 64 poziomy rozwinięcia. Surowy główny SQL i zdekodowany SQL widoku są ograniczane przed rozwinięciem, więc nieprawidłowe środowisko kończy się błędem bez publikowania częściowego wyniku.

Użyj [modelu](/docs/models/authoring), gdy potrzebujesz trwałej tabeli. Użyj widoku logicznego, gdy liczą się ponowne wykorzystanie i kontrola typów, ale materializacja nie jest potrzebna.
