Как выполнить запрос, передавая параметр?

Для выполнения запроса с передачей параметра в PostgreSQL можно использовать конструкцию подготовленного запроса с привязкой параметров.

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

SELECT * FROM users WHERE age = :age

Здесь ":age" является указателем на параметр, который мы будем передавать в запрос.

Затем, в приложении или коде, где выполняется запрос, необходимо подготовить запрос с использованием функции-метода, предоставляемого доступными PostgreSQL драйверами. К примеру, воспользуемся языком Python и драйвером psycopg2:

import psycopg2

# Создание подключения к базе данных
conn = psycopg2.connect(database="mydb", user="myuser", password="mypassword")

# Создание курсора для выполнения запросов
cursor = conn.cursor()

# Подготовка запроса с параметром
query = "SELECT * FROM users WHERE age = %(age)s"
cursor.execute(query, {"age": 25})

# Получение результата выполнения запроса
rows = cursor.fetchall()
for row in rows:
    print(row)

# Закрытие курсора и соединения с базой данных
cursor.close()
conn.close()

В данном примере мы выполняем подключение к базе данных, создаем курсор для выполнения запросов. Затем, подготавливаем запрос с передачей параметра в виде словаря {"age": 25}, где ключ "age" соответствует параметру ":age". Затем, вызываем метод execute(), передавая подготовленный запрос и параметры. Заключительно, получаем результат выполнения запроса и выполняем необходимую обработку данных.

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