Как мы можем выбрать два столбца с разным сопоставлением
У меня есть запрос SQL, как
SELECT Col1, Col2 FROM Table1
UNION ALL
SELECT Col1, Col2 FROM Table2
где col1
а также col2
являются строками и использованием сопоставлений.
Когда я запускаю запрос, он показывает ошибку:
- Не удалось разрешить конфликт сопоставления для столбца 1 в операторе.
- Не удалось разрешить конфликт сопоставления для столбца 2 в операторе.
Любой, пожалуйста, помогите.
1 ответ
Решение
Является ли ошибка разницей в чувствительности к регистру между двумя таблицами? Это ошибка, которую я чаще всего видел.
Если это так, сопоставьте оскорбительный стол со старым добрым Latin1_General_CI_AS
или что-то еще наиболее подходящее.
Например, если Table1 чувствителен к регистру, и вы хотите сопоставить обе таблицы, как если бы они были нечувствительны к регистру:
SELECT Col1 COLLATE Latin1_General_CI_AS,
Col2 COLLATE Latin1_General_CI_AS FROM Table1
UNION ALL
SELECT Col1, Col2 FROM Table2