10.6. Выходные столбцы SELECT#
10.6. Выходные столбцы SELECT
#
Правила, приведенные в предыдущих разделах, приведут к присвоению неизвестных типов данных unknown
всем выражениям в SQL-запросе, за исключением литералов неопределенного типа, которые появляются в качестве простых выходных столбцов команды SELECT
. Например, в
SELECT 'Hello World';
нет ничего, что бы указывало, какой тип должна иметь строковая литера. В этой ситуации Tantor BE будет использовать тип text
по умолчанию.
Когда SELECT
является одной из частей конструкции UNION
(или INTERSECT
или EXCEPT
), или когда он
появляется внутри INSERT ... SELECT
, эта правило не применяется,
поскольку правила, указанные в предыдущих разделах, имеют преимущество. Тип
неспецифицированного литерала может быть взят из другой части UNION
в первом случае, или из столбца назначения во втором случае.
Возвращаемые списки RETURNING
обрабатываются так же, как и списки вывода SELECT
для этой цели.
Примечание
До версии 10 Tantor BE такое правило не существовало, и
неопределенные литералы типа в списке вывода SELECT
оставались типом unknown
. Это имело различные негативные последствия,
поэтому это было изменено.