select (select count(*) from users where blah = 'blah') as "users",(select count(*) from contacts where blah = 'blah') as "contacts"
我知道我可以使用续集一次执行这些查询,但我想同时执行它们.
解决方法 您可以在不使用以下内容编写原始sql的情况下执行该查询:dataset = DB.select {[ DB[:users].where(blah: 'blah').select { count('*') }.as(:users),DB[:contacts].where(blah: 'blah').select { count('*') }.as(:contacts) ]}dataset.first# => { users: X,contacts: Y }dataset.sql# => "SELECT (SELECT count('*') FROM \"users\" WHERE (\"blah\" = 'blah')) AS \"users\",# (SELECT count('*') FROM \"contacts\" WHERE (\"blah\" = 'blah')) AS \"contacts\""总结
以上是内存溢出为你收集整理的ruby – 使用续集gem的多个聚合查询全部内容,希望文章能够帮你解决ruby – 使用续集gem的多个聚合查询所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)