вторник, 19 марта 2013 г.

Можно ли использовать разные типы данных в одном столбце в операциях на множествах (UNION, UNION ALL, EXCEPT, INTERSECT)





-- Можно ли использовать разные типы данных в одном столбце в операциях на множествах (UNION, UNION ALL, EXCEPT, INTERSECT)

-- МОЖНО, если возможно осуществить неявное преобразование типов
SELECT '100' AS C
    UNION ALL
SELECT 200 AS C

--Желательно, как всегда, использовать явное  преобразование типов
SELECT CAST('100' AS INT) AS C
    UNION ALL
SELECT 200 AS C

-- Если преобразование типов невозможно - будет ошибка
SELECT 'One' AS C
    UNION ALL
SELECT 2 AS C