Использование Postgres Я написал следующий запрос:
SELECT
*,
CASE
WHEN
(SELECT count(*) FROM applications WHERE applications.user_id = 774 AND applications.job_id = jobs.id) > 0
THEN 1
ELSE 0
END
AS has_applied
FROM jobs
Он выбирает все задания из моей базы данных и запускает проверку, чтобы увидеть, вошел ли пользователь, вошедший в данный момент (с идентификатором 774 в данном случае) применимо к заданию.
Я вижу только один запрос, выполненный в моей базе данных GUI, но для этого не нужно запускать вложенный запрос для каждой строки из таблицы jobs
?
Есть ли лучший способ написать это? Или это похоже на то, что должно быть сделано путем сравнения наборов данных из двух отдельных запросов?