Что такое Row vs Rows?

Junior
468 просмотров
AFK Offer AI

pgx.Row — результат QueryRow(), содержит одну строку. Вызываешь .Scan() для извлечения. Если строк нет — Scan вернёт pgx.ErrNoRows. pgx.Rows — результат Query(), итератор по множеству строк. Используешь rows.Next() в цикле, rows.Scan() для каждой строки, rows.Err() после цикла. Важно: defer rows.Close() — иначе соединение не вернётся в пул. QueryRow для SELECT ... WHERE id = $1 (одна строка), Query для SELECT ... WHERE status = $1 (много строк).

Следующий вопрос

Задача: реализуйте in-memory кэш с TTL (время жизни записей)