Для простоты, скажем, у меня есть две таблицы с одинаковыми строками.
Пользователь с полями «id» и «name».И user_override с полями "id" и "name"
Я хочу запустить оператор Select, который выберет все значения из User и переопределит любое значение, если оно присутствует в UserOverride
что-то вроде (очевиднотерпит неудачу - COALESCE не принимает au. * в качестве аргумента)
SELECT COALESCE(uo.*, u.*) FROM USER u LEFT JOIN USER_OVERRIDE uo ON u.id = uo.id
, и результатом будет что-то вроде
id | name
1 | 'normal name 1'
2 | 'overriden name 2'
3 | 'normal name 3
Я бы сделал это просто переопределив каждое значение, но это будетв функции, и я бы предпочел не менять его каждый раз и просто повторно использовать один и тот же запрос.
Гарантируется, что эти две таблицы имеют одинаковые столбцы.
Возможно ли что-то подобное?Какой будет синтаксис?