Хммм. , , предполагая, что таблицы находятся в одной базе данных, вы можете использовать information_schema
:
select c.column_name
from information_schema.columns c
where c.table_name in ('table_a', 'table_b')
group by c.column_name
having min(data_type) <> max(data_type)
Примечание. Это не возвращает столбцы, которые находятся только в одной таблице. Если вы этого хотели, добавьте or count(*) = 1
.