Skip to content
Snippets Groups Projects
Commit 5f387a21 authored by Alexander Tolstoy's avatar Alexander Tolstoy Committed by Alexander Tolstoy
Browse files

select.md: partly rewrite description

parent 0bb44323
No related branches found
No related tags found
1 merge request!573At/select without scans
Pipeline #53233 passed
# SELECT # SELECT
[DQL](dql.md)-команда `SELECT` используется для получения, фильтрации и [DQL](dql.md)-команда `SELECT` используется для получения, фильтрации и
преобразования кортежей из таблиц в запросе. Если никакие данные не преобразования кортежей из множества таблиц в запросе. Такое множество
удовлетворяют условиям фильтрации, то в ответе вернется только описание может представлять собой одну или несколько таблиц, либо вовсе быть
метаданных колонок без самих кортежей. В контексте распределенной [пустым](#no_scan).
системы, команда `SELECT` в Picodata получает информацию из всех частей
таблицы, которая может храниться на нескольких узлах кластера. Помимо Команда `SELECT` в Picodata работает как с глобальными, так и с
этого, `SELECT` поддерживает манипуляцию данными и [без запроса к шардированными таблицами. В последнем случае части таблицы могут
таблицам](#no_scan). храниться на нескольких узлах кластера, и `SELECT` получит данные о всех
таких частях.
При использовании условии (`SELECT... WHERE...`) часть данных будет
отфильтрована. Если никакие данные не удовлетворяют условиям фильтрации,
то в ответе вернется только описание метаданных колонок без самих
кортежей.
!!! note "Примечание" !!! note "Примечание"
Кортежи в выводе идут в том порядке, в каком их Кортежи в выводе идут в том порядке, в каком их
...@@ -251,7 +257,18 @@ SELECT * FROM ( ...@@ -251,7 +257,18 @@ SELECT * FROM (
SELECT * FROM warehouse LIMIT 3 SELECT * FROM warehouse LIMIT 3
``` ```
### Обработка данных без запроса к таблицам {: #no_scan } ### Запросы без таблиц {: #no_scan }
Если запрос SELECT делается без таблиц, то имен колонок в нем быть не
может, а значит имеет смысл работать только с константами. Следующий
запрос вернет один кортеж с двум колонками:
```sql
SELECT 42, 24
```
В примере с манипуляцией данными в результате запроса будет виртуальная
таблица из двух строк и одной колонки:
```sql ```sql
SELECT 'cats' UNION SELECT 'dogs' SELECT 'cats' UNION SELECT 'dogs'
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment