Это результат объектно-реляционной архитектуры Postgres'. Для каждой создаваемой таблицы есть также соответствующее имя composite type с таким же именем.
При запуске
SELECT articles
FROM articles
вы выбираете один столбец с типаarticles
из таблицы с именем articles
. Если вы обратите пристальное внимание на вывод этого запроса, вы заметите, что ваш результат содержит только один столбец, где значение заключено в круглые скобки, например. (1,Foobar)
(если в табличных товарах имеется две колонки). При запуске select * from articles
выход две колонки (и не круглые скобки)
То же самое происходит, когда вы положили список столбцов между скобками:
select (article_id, article_name)
from articles
также возвращает единственный столбец с anonymous composite type, содержащий два поля (это также хороший пример того, что «столбец» и «поле» - это не одно и то же).
Есть ли столбец с именем 'articles' в таблице' articles'? – Kevin
@Kevin Нет, в таблицах «статьи» нет столбцов «статьи», – Alexander