Postgresql, где инструкция для таблиц с разными псевдонимами столбцов

#sql #postgresql #where-clause #information-schema

Вопрос:

Похоже, это не самый распространенный вариант использования, но я часто сталкиваюсь с ним. У меня есть несколько таблиц с аналогичной структурой, но разными псевдонимами столбцов. Например day , против date . Это затрудняет выработку общих WHERE утверждений.

Мне любопытно, есть ли способ проверить и учесть это в автоматическом режиме.

Скажем, образец, table 1 выглядит так —

 day         id
2021-01-01  book
2021-02-01  movie
 

И образец table 2 выглядит примерно так —

 date         idd
2021-01-01   book
2021-02-01   movie
 

И table 3 имеет ту же структуру, что и table 1

 day         id
2021-01-01  book
2021-02-01  movie
 

Таким образом, данные существуют одинаково, но имя столбца другое. Как я мог бы создать общий WHERE оператор, который работал бы для обеих этих таблиц. Проверка day , существует ли, если да, то day , если нет, то date ?

Я хотел бы иметь возможность использовать одно и то же SELECT WHERE утверждение для обоих.

Комментарии:

1. как выглядел ваш запрос до того, как где?

2. так SELECT * FROM table_1 WHERE day or date ... или также может сделать SELECT * FROM table_2 WHERE day or date так WHERE , чтобы синтаксис был согласованным