1
那么,基本上我需要达到这个效果,有什么建议吗?如何在PostgreSQL中使用Case语句?
JOIN ((CASE WHEN (SELECT COUNT(e.order_id) FROM entry ee WHERE ee.order_id = o.id) > 1
THEN (SELECT * FROM entry e WHERE e.user_id = 3)
ELSE (SELECT * FROM entry e WHERE e.user_id = 3 AND e.draw_id = (SELECT dd.id
FROM draw dd
WHERE dd.draw_date_time > CURRENT_TIMESTAMP(0)
ORDER BY dd.draw_date_time ASC
LIMIT 1))
END) e ON e.order_id = o.id