SHOW Queries
SHOW CREATE TABLE
SHOW CREATE [TEMPORARY] [TABLE|DICTIONARY|VIEW] [db.]table|view [INTO OUTFILE filename] [FORMAT format]
Возвращает один столбец типа String
с именем statement, содержащий одно значение — запрос CREATE
, с помощью которого был создан указанный объект.
SHOW DATABASES
Выводит список всех баз данных.
SHOW DATABASES [LIKE | ILIKE | NOT LIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE filename] [FORMAT format]
Этот запрос идентичен запросу:
SELECT name FROM system.databases [WHERE name LIKE | ILIKE | NOT LIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE filename] [FORMAT format]
Примеры
Получение списка баз данных, имена которых содержат последовательность символов 'de':
SHOW DATABASES LIKE '%de%'
Результат:
┌─name────┐
│ default │
└─────────┘
Получение списка баз данных, имена которых содержат последовательность символов 'de' независимо от регистра:
SHOW DATABASES ILIKE '%DE%'
Результат:
┌─name────┐
│ default │
└─────────┘
Получение списка баз данных, имена которых не содержат последовательность символов 'de':
SHOW DATABASES NOT LIKE '%de%'
Результат:
┌─name───────────────────────────┐
│ _temporary_and_external_tables │
│ system │
│ test │
│ tutorial │
└────────────────────────────────┘
Получение первых двух строк из списка имен баз данных:
SHOW DATABASES LIMIT 2
Результат:
┌─name───────────────────────────┐
│ _temporary_and_external_tables │
│ default │
└────────────────────────────────┘
Смотрите также
SHOW PROCESSLIST
SHOW PROCESSLIST [INTO OUTFILE filename] [FORMAT format]
Выводит содержимое таблицы system.processes, которая содержит список запросов, выполняющихся в данный момент времени, кроме самих запросов SHOW PROCESSLIST
.
Запрос SELECT * FROM system.processes
возвращает данные обо всех текущих запросах.
Полезный совет (выполните в консоли):
$ watch -n1 "clickhouse-client --query='SHOW PROCESSLIST'"
SHOW TABLES
Выводит список таблиц.
SHOW [TEMPORARY] TABLES [{FROM | IN} <db>] [LIKE | ILIKE | NOT LIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]
Если условие FROM
не указано, запрос возвращает список таблиц из текущей базы данных.
Этот запрос идентичен запросу:
SELECT name FROM system.tables [WHERE name LIKE | ILIKE | NOT LIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]
Примеры
Получение списка таблиц, имена которых содержат последовательность символов 'user':
SHOW TABLES FROM system LIKE '%user%'
Результат:
┌─name─────────────┐
│ user_directories │
│ users │
└──────────────────┘
Получение списка таблиц, имена которых содержат последовательность символов 'user' без учета регистра:
SHOW TABLES FROM system ILIKE '%USER%'
Результат:
┌─name─────────────┐
│ user_directories │
│ users │
└──────────────────┘
Получение списка таблиц, имена которых не содержат символ 's':
SHOW TABLES FROM system NOT LIKE '%s%'
Результат:
┌─name─────────┐
│ metric_log │
│ metric_log_0 │
│ metric_log_1 │
└──────────────┘
Получение первых двух строк из списка таблиц:
SHOW TABLES FROM system LIMIT 2
Результат:
┌─name───────────────────────────┐
│ aggregate_function_combinators │
│ asynchronous_metric_log │
└────────────────────────────────┘
Смотрите также
SHOW DICTIONARIES
Выводит список внешних словарей.
SHOW DICTIONARIES [FROM <db>] [LIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]
Если секция FROM
не указана, запрос возвращает список словарей из текущей базы данных.
Аналогичный результат можно получить следующим запросом:
SELECT name FROM system.dictionaries WHERE database = <db> [AND name LIKE <pattern>] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]
Example
Запрос выводит первые две стоки из списка таблиц в базе данных system
, имена которых содержат reg
.
SHOW DICTIONARIES FROM db LIKE '%reg%' LIMIT 2
┌─name─────────┐
│ regions │
│ region_names │
└──────────────┘
SHOW GRANTS
Выводит привилегии пользователя.
Синтаксис
SHOW GRANTS [FOR user1 [, user2 ...]] [WITH IMPLICIT] [FINAL]
Если пользователь не задан, запрос возвращает привилегии текущего пользователя.
WITH IMPLICIT
добавляет неявные привилегии (например GRANT SELECT ON system.one
).
FINAL
объединяет все текущие привилегии с привилегиями всех ролей пользователя (с наследованием).
SHOW CREATE USER
Выводит параметры, использованные при создании пользователя.
SHOW CREATE USER
не возвращает пароль пользователя.
Синтаксис
SHOW CREATE USER [name1 [, name2 ...] | CURRENT_USER]
SHOW CREATE ROLE
Выводит параметры, использованные при создании роли.
Синтаксис
SHOW CREATE ROLE name1 [, name2 ...]
SHOW CREATE ROW POLICY
Выводит параметры, использованные при создании политики доступа к строкам.
Синтаксис
SHOW CREATE [ROW] POLICY name ON [database1.]table1 [, [database2.]table2 ...]
SHOW CREATE QUOTA
Выводит параметры, использованные при создании квоты.
Синтаксис
SHOW CREATE QUOTA [name1 [, name2 ...] | CURRENT]
SHOW CREATE SETTINGS PROFILE
Выводит параметры, использованные при создании профиля настроек.
Синтаксис
SHOW CREATE [SETTINGS] PROFILE name1 [, name2 ...]
SHOW USERS
Выводит список пользовательских аккаунтов. Для просмотра параметров пользовательских аккаунтов, см. системную таблицу system.users.
Синтаксис
SHOW USERS
SHOW ROLES
Выводит список ролей. Для просмотра параметров ролей, см. системные таблицы system.roles и system.role_grants.
Синтаксис
SHOW [CURRENT|ENABLED] ROLES
SHOW PROFILES
Выводит список профилей настроек. Для просмотра других параметров профилей настроек, см. системную таблицу settings_profiles.
Синтаксис
SHOW [SETTINGS] PROFILES
SHOW POLICIES
Выводит список политик доступа к строкам для указанной таблицы. Для просмотра других параметров, см. системную таблицу system.row_policies.
Синтаксис
SHOW [ROW] POLICIES [ON [db.]table]
SHOW QUOTAS
Выводит список квот. Для просмотра параметров квот, см. системную таблицу system.quotas.
Синтаксис
SHOW QUOTAS
SHOW QUOTA
Выводит потребление квоты для всех пользователей или только для текущего пользователя. Для просмотра других параметров, см. системные таблицы system.quotas_usage и system.quota_usage.
Синтаксис
SHOW [CURRENT] QUOTA
SHOW ACCESS
Выводит список всех пользователей, ролей, профилей и пр., а также все привилегии.
Синтаксис
SHOW ACCESS
SHOW CLUSTER(s)
Возвращает список кластеров. Все доступные кластеры перечислены в таблице system.clusters.
По запросу SHOW CLUSTER name
вы получите содержимое таблицы system.clusters для этого кластера.
Синтаксис
SHOW CLUSTER '<name>'
SHOW CLUSTERS [LIKE|NOT LIKE '<pattern>'] [LIMIT <N>]
Примеры
Запрос:
SHOW CLUSTERS;
Результат:
┌─cluster──────────────────────────────────────┐
│ test_cluster_two_shards │
│ test_cluster_two_shards_internal_replication │
│ test_cluster_two_shards_localhost │
│ test_shard_localhost │
│ test_shard_localhost_secure │
│ test_unavailable_shard │
└──────────────────────────────────────────────┘
Запрос:
SHOW CLUSTERS LIKE 'test%' LIMIT 1;
Результат:
┌─cluster─────────────────┐
│ test_cluster_two_shards │
└─────────────────────────┘
Запрос:
SHOW CLUSTER 'test_shard_localhost' FORMAT Vertical;
Результат:
Row 1:
──────
cluster: test_shard_localhost
shard_num: 1
shard_weight: 1
replica_num: 1
host_name: localhost
host_address: 127.0.0.1
port: 9000
is_local: 1
user: default
default_database:
errors_count: 0
estimated_recovery_time: 0
SHOW SETTINGS
Возвращает список системных настроек и их значений. Использует данные из таблицы system.settings.
Синтаксис
SHOW [CHANGED] SETTINGS LIKE|ILIKE <name>
Секции
При использовании LIKE|ILIKE
можно задавать шаблон для имени настройки. Этот шаблон может содержать символы подстановки, такие как %
или _
. При использовании LIKE
шаблон чувствителен к регистру, а при использовании ILIKE
— не чувствителен.
Если используется CHANGED
, запрос вернет только те настройки, значения которых были изменены, т.е. отличны от значений по умолчанию.
Примеры
Запрос с использованием LIKE
:
SHOW SETTINGS LIKE 'send_timeout';
Результат:
┌─name─────────┬─type────┬─value─┐
│ send_timeout │ Seconds │ 300 │
└──────────────┴─────────┴───────┘
Запрос с использованием ILIKE
:
SHOW SETTINGS ILIKE '%CONNECT_timeout%'
Результат:
┌─name────────────────────────────────────┬─type─────────┬─value─┐
│ connect_timeout │ Seconds │ 10 │
│ connect_timeout_with_failover_ms │ Milliseconds │ 50 │
│ connect_timeout_with_failover_secure_ms │ Milliseconds │ 100 │
└─────────────────────────────────────────┴──────────────┴───────┘
Запрос с использованием CHANGED
:
SHOW CHANGED SETTINGS ILIKE '%MEMORY%'
Результат:
┌─name─────────────┬─type───┬─value───────┐
│ max_memory_usage │ UInt64 │ 10000000000 │
└──────────────────┴────────┴─────────────┘
См. также
- Таблица system.settings