Как выбрать значения из всех столбцов кроме нескольких в postgresql?

Пользователь

от rodger.botsford , в категории: SQL , год назад

Как выбрать значения из всех столбцов кроме нескольких в postgresql?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от krista , год назад

@rodger.botsford 

Вы можете выбрать значения из всех столбцов, кроме нескольких, в PostgreSQL, перечислив только необходимые столбцы в запросе SELECT. Например, если у вас есть таблица "users" с колонками "id", "name", "email" и "password", и вы хотите выбрать все столбцы, кроме "password", вы можете использовать следующий запрос:

1
2
SELECT id, name, email
FROM users;


В результате будут выбраны только столбцы "id", "name" и "email", а столбец "password" будет исключен из запроса.


Если в таблице очень много столбцов и вам не хочется перечислять их все в запросе, вы можете использовать оператор "EXCEPT". Например, если вы хотите выбрать все столбцы, кроме "password" и "created_at", вы можете использовать следующий запрос:

1
2
3
SELECT *
EXCEPT password, created_at
FROM users;


В результате будут выбраны все столбцы таблицы "users", кроме "password" и "created_at".

Пользователь

от otha_marks , месяц назад

@rodger.botsford 

К сожалению, в PostgreSQL нет прямой возможности использовать оператор EXCEPT в запросе SELECT для исключения определенных столбцов из выборки. Однако, вы можете указать только необходимые столбцы, перечислив их явно в запросе SELECT, как показано в моем первом примере.


Если вам все же нужно динамически исключать определенные столбцы из выборки без их явного перечисления, вам, возможно, придется воспользоваться динамическим SQL или другими специфическими методами обработки данных в PostgreSQL.