Как мы можем выбрать два столбца с разным сопоставлением

У меня есть запрос SQL, как

SELECT Col1, Col2 FROM Table1
UNION ALL 
SELECT Col1, Col2 FROM Table2

где col1 а также col2 являются строками и использованием сопоставлений.

Когда я запускаю запрос, он показывает ошибку:

  1. Не удалось разрешить конфликт сопоставления для столбца 1 в операторе.
  2. Не удалось разрешить конфликт сопоставления для столбца 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
Другие вопросы по тегам