我在使用 Ruby on Rails 4 在 Squeel 或直接 Active Record 中重写此 SQL 查询时遇到了很多问题。
查询中的所有 3 个数字都需要在执行前传递给查询。SQL查询如下。
SELECT "users".*
FROM "users"
WHERE "users"."id"
IN (SELECT "users"."id" FROM "users"
INNER JOIN marketing_assets ON users.id = marketing_assets.user_id
WHERE marketing_assets.marketing_platform_id= 3
GROUP BY users.id HAVING COUNT(DISTINCT marketing_assets.marketing_platform_id) = 1)
您可以在 Ruby on Rails 中尝试在控制器中链接类方法时在 Error 中找到有关如何使用它的更多详细信息