Как сделать SQL запрос на имя таблицы с пробелом в Postgres? - PullRequest
0 голосов
/ 16 мая 2018

Я использую базу данных postgres, и в ней есть таблица с именем «Системный арендатор». Теперь я хочу сделать запрос по нему, я делаю -

select * from "System Tenant";

но это приводит к ошибке -

ERROR:  relation "System Tenant" does not exist
LINE 1: select * from "System Tenant"
                       ^

Не могли бы вы подсказать, как я могу это решить?

1 Ответ

0 голосов
/ 16 мая 2018

скажем так:

so=# create schema t;
CREATE SCHEMA
so=# create table t."Bad Name"();
CREATE TABLE
so=# create table "b@d Name"();
CREATE TABLE

теперь найди все:

so=# select oid::regclass from pg_class where relname ilike '% name%';
     oid
--------------
 t."Bad Name"
 "b@d Name"
(2 rows)

и используйте точно так, как указано:

so=# select * from t."Bad Name";
--
(0 rows)

или

so=# select * from "b@d Name";
--
(0 rows)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...