Вы строите ключ сессии как склейку user_id (тип int) и session_id (тип text). Какой вариант корректен для конкатенации в SQL?

Auser_id + '-' + session_id
BCAST(user_id AS int) || '-' || session_id
Cuser_id || '-' || CAST(session_id AS int)
Duser_id::text || '-' || session_id
Правильный ответ. Для конкатенации строк числовые поля обычно приводят к text через CAST или ::text.

Разбор

Оператор || работает со строками. Если один из операндов — число, его нужно явно привести к тексту: user_id::text или CAST(user_id AS text). Это предотвращает ошибки типов и делает намерение запроса ясным.

Проверь себя · 1/3разбор после ответа
На ревью вы видите выражение CAST(user_id AS text). Какой вариант с ::type является эквивалентным по смыслу?
Тренировать SQL в Telegram

Ещё вопросы по теме «Строки и приведение типов»