выберите в несуществующем столбце «имя» возвращает tupels (PostgreSQL) - PullRequest
0 голосов
/ 12 января 2011

Когда я случайно выбрал несуществующий столбец «имя» из таблицы, оператор вернул запись как кортеж (см. Пример ниже) Это работало с версией сервера 8.4.3 (не с 8.2). Клиент был 8.4.4.

BEGIN;

CREATE TEMP TABLE tmp_tbl 
  ( foo varchar(8), bar varchar(8), baz varchar(8) )
ON COMMIT DROP;

COPY tmp_tbl ( foo, bar, baz) 
FROM stdin
WITH DELIMITER ',';
justus,peter,bob
langly,frohike,byers
alpha,beta,gamma
\.

-- SELECT * from tmp_tbl;
SELECT tmp_tbl.name from tmp_tbl;

END;

Вывод был

          name          
------------------------
 (justus,peter,bob)
 (langly,frohike,byers)
 (alpha,beta,gamma)
(3 rows)

и не ошибка, как я ожидал.

Не могли бы вы показать мне, где я могу прочитать об этой функции в документации PostgrSQL? Я ничего не мог найти, и использование Google для поиска «выбрать», «имя» и т. Д. Не очень помогло.

Спасибо за ответ заранее! к

1 Ответ

1 голос
/ 12 января 2011

Смотрите эту ветку в списке рассылки PostgreSQL:

http://archives.postgresql.org/pgsql-general/2010-02/msg01038.php

По существу foo.name "переведено" в name(foo)

Я согласен, что это сбивает с толку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...